質問です。
$dataにはhtmlがごちゃごちゃ入っているとします。例えば
$data =
"<p>\n".
"    ほげれ\n".
"</p>\n".
"<pre>\n".
"    ここは整形済み\n".
"</pre>";

この$dataを他のhtmlに埋め込むプログラムをつくりました。
そのとき、埋め込んで完成したhtmlのソースが見づらいため、
埋め込む$dataの各行にインデントを加え、埋め込み先のhtmlソースと
幅を合わせます。

$data =~ s/\n/\n        /g;
という正規表現で、各行の改行の後ろに次行のインデントを加えてみました。

ところがこの場合、preの中身にも当然インデントが入ってしまい、困っています。
preの中はインデントをかけたくありません。

どういう正規表現で書けばいいでしょうか。

速度はあまり気にしませんが。遅くてもいいので1行の正規表現で書きたいです。
プラットフォームはperl5.8によるCGIです。