A couple things about turnstep's answer.. on a minor issue,
it will only catch capital SRC, which might not catch them
all. A more important point, though, is that IMG tags
aren't the only ones with SRC attributes.. FRAME and
$html =~ s/(<\s*img\s+.*src\s*=\s*)(")?.*?(?(2)")([\s>])/$1"newimage.j
To go through this in parts.. The first group of
parentheses is catching the beginning of the tag, with
optional whitespace checking, followed by a bunch of junk
(the src attribute doesn't necessarily have to follow the
img, e.g. <img border=0 src="img.gif">). This
matches up to the src= part.
Next, a quote is matched if there is one, and if there is
a quote, the match is taken up to the closing quote.
The match ends with either whitespace or a
tag close. The $1 match is everything up to the name of
the image, which is being preserved. Then, your new image
is subbed in, and the original image name is disregarded.
The i flag is needed to catch src and SRC (and sRc, etc.),
and the s flag in case the image tag is broken up on to
This is a pretty difficult regular expression (which went
through moderate testing..), but if
you're up to reading through the perlre man pages, you
should be able to understand it all. Let me know if there
are any questions about it.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
Outside of code tags, you may need to use entities for some characters:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||