use strict; use warnings; my $str; while (){ chomp; ($_ =~ m/^\w/) ? ($str .= "<\/p>\n

$_\n") :($str.="$_\n"); } $str =~ s/^(<\/p>)(.+)$/$2$1/gsi; print $str; __DATA__ abc: asdf1 asdf2 def: asdf3 ghi: asdf4 asdf5