Mea culpa. I wasn't paying attention to the .*
in the regex. Sigh. But I'll leave my post intact, to preserve my mistake for posterity...
Off topic, but:
my $file = $filename; # can't remember why I do this, always
$file =~ s!^.*(\\|\/)!!; # something about cleaning stuff up
...is pretty ugly. If you're trying
to trim a trailing slash, it's easier to read like this:
my $file = $filename;
$file =~ s![\\/]$!!;
If you can't tell what your own regex is doing, it's time to clean it up.