• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 249
  • Last Modified:

string manipulation

i have a path to a file: x:\dir1\dir2\test.txt < this path is generated dynamically.
i need a way to get only x:\dir1 from that string. i.e. get the drive and the first directory.
0
n4narik
Asked:
n4narik
1 Solution
 
Perl_DiverCommented:
my $path = 'x:\dir1\dir2\test.txt';
my ($first_dir) = $path =~ m#^(\w:\\[^\\]+)\\#;
print $first_dir;
0
 
Adam314Commented:
You could use a regex:
$path =~ s/(.{3}[^\\]+)/$1/;



or use the File::Spec module:
use File::Spec;
($volume,$dirs,$file)=File::Spec->splitpath($path);
$dir1=(File::Spec->splitdir($dirs))[1];
$path="$volume\\$dir1";
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now