http://www.perlmonks.org?node_id=69798

voyager has asked for the wisdom of the Perl Monks concerning the following question:

I have user entering chunk of text in a textarea. For the most part this will just be typing. On display, I want to convert two newlines into two BR tags, to preserve the formating from the textarea. So this works fine:
my $text = get_text_from_db(..); $text =~ s|\n|<br />|sg;
But these don't (can someone tell me why?):
$text =~ s|\n\n|<br /><br />|sg; $text =~ s|\n{2}|<br /><br />|sg;
In the end I want to convert any two newlines to two BR tags, but only if they are not followed by another html tag. So I am hoping for something like:
$text =~ s|\n{2}(^<)|<br /><br />$1|sg;