http://qs321.pair.com?node_id=123550


in reply to Re: Re: Re: Re: convert windows path
in thread convert windows path

So... what? you want to get a scalar var containing the filename? So you can print it out or something?

If that's what you want, There's A Lot More Than One Way To Do It. Don't let anyone around here hear you say "Perl doesn't let me search and replace..." ! If anyone can search and replace it's Perl.

Assuming you have
my $filepath = 'c:\somedir\file.ext'
and you want to get
$filename eq 'file.ext'
then
$filepath =~ /([\w|\.]*)$/; my $filename = $1;
Oughta do it - i.e. capture the longest possible string at the end of the filepath that is either a word character (alpha-num or _) or a dot. Or if you think there might be non-word characters in the file name, $filepath =~ /([^\\|^\/]*)$/; - capture the longest string at the end that doesn't have either a "\" or a "/".

I'm no regex guru, so there may be obscure pitfalls in either of these, or a neater way to do it... but that's what I'd do.

Of course, I may have completely mis-understood your question again :)

§ George Sherston