mも使えなくはない

$text =~ s/(?:\n?<pre>.*?<\/pre>|(^))/defined($1)?"\t":$&/sgme;