If you have a regex like:
if ($foo =~ /.*\/jpg\/.*/) { ... }
It's looking for a string containing "/jpg/". Notice that slash at the end. It won't match "http://fakesite/blarf.jpg" because the slash.
By the way, using m{..regex..} allows you to avoid the backslashes used to escape your forward slashes. So, the regex m{.*/jpg/.*} is better written as m{/jpg/}. So your regex looks like it could be simplified to:
m{(css|js|images|covers|pdf|jpg|MultiTrack|files-png|newissues|files|v +ideo|mp3|audio|invoices|MYFILES|newsclubs|scorch|images\/myfile|video +|mp3|audio).*}
assuming you're just looking for paths ending in one of the specified bits. You'd probably do well to read and understand perldoc perlre.
Update: a little edit in the first couple minutes, trying to get it to read well.
...roboticus
When your only tool is a hammer, all problems look like your thumb.
In reply to Re: Why this Simple REGEX does Not Match?
by roboticus
in thread Why this Simple REGEX does Not Match?
by mmartin
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |