gryphon, you have a couple of oversights in your regex.
HTTP-404 appears to have multiple new-lines in
$post. But your use of $ in your regex will only
find the last one. To make the $ work for mid-string
new-lines, you
would need to use the /m modifier. And since you
are attempting to use \n (and perhaps \r) for
your match, the $ is
superfluous to your strategy anyway.
Also, Perl automagically hides the difference between OS's
handling of
new-lines. I can match \n on my windows machine with
no problems. Perl pretends it's a single character and
hides the ugly details from me. To put it another way;
\n is an OS-compliant newline, not linefeed.
So you don't need to worry about \r. Trying to match it
will confuse things.
Finally, if we wanted to depend on $ for our
solution, we might go for:
$post =~ s/$/<br>/mg;
which is sweeter than the regex in my original post. |