in reply to Re^2: Regex to match non image urls
in thread Regex to match non image urls
Ah, OK. You never said it was part of a s/// operator.
Maybe something along these lines?
use 5.010; use strict; use warnings; my $text = do { local $/ = <DATA> }; my ($start, $end) = map quotemeta, qw([img] [/img]); $text =~ s{($start(.+?)$end)}{ my $link = $1; my $uri = $2; $uri =~ /\.(?:jpe?g|png|svg|gif|bmp)$/ ? $link : 'Invalid' }eg; print $text; __DATA__ Foo [img]http://example.com/[/img] Bar [img]http://example.com/logo.jpeg[/img]
That said, what you are doing is conceptually broken. It is perfectly valid for an image on the web to have a URL ending with ".cgi", ".php", or even ".html". Whether something is an image or not is decided by its HTTP Content-Type header, not by the last few characters of the URL.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Regex to match non image urls
by muba (Priest) on Jan 18, 2013 at 13:13 UTC |