in reply to How do I extract a file name from a path string

This works for both DOS and UNIX path separators and when there is no path info.
( $dir, $file ) = m/(.*)[\\\/](.+)/ ? ( $1, $2 ) : ( undef, $_ );

Replies are listed 'Best First'.
Re: Answer: How do I extract a file name from a path string
by talexb (Chancellor) on Jan 17, 2005 at 22:47 UTC

    I'm not sure why I would want to use that code fragment and not File::Spec::Functions.

    Alex / talexb / Toronto

    "Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds

      I wholeheartedly agree:

      use File::Spec::Functions; my $fname = '/home/legato/filename.pl'; my ($vol, $path, $filename) = splitpath($fname); # $filename now contains 'filename.pl'
      A pattern match will not be as platform-aware (or as readable, incidentally) or as thorough as the above code, which is not significantly longer.

      Anima Legato
      .oO all things connect through the motion of the mind