正規表現道場
..
106:nobodyさん
07/07/20 05:15:36 wp5plGkY
$textにHTMLタグを含んだ文字列が入っていて、
<>外部の< > " をそれぞれ < > " に置換したい(<>内部はそのまま)
のです。以下のように、まず全ての<>"を置換し、HTMLタグの<>だけを
元に戻してみましたが、うまくいきません。どなたかご教授願います。
言語はあとでPHPでも同様のものを作成する予定ですが、今はPerlです。
$text = "tt\"tt<3bbb\nst<a gg&tg;gg href=\"aaa\">bbb<\n";
print "before=\n";
print $text."\n\n";
$text =~ s/</</g; $text =~ s/>/>/g; $text =~ s/\"/"/g;
$text =~ s/<([^(>)]*)>/<$1>/g;
while ($text =~ /<([^>]*)\"\;([^>]*)>/) {
$text =~ s/<([^>]*)\"\;([^>]*)>/<$1\"$2>/g;
}
print "after=\n";
print $text."\n";
↓このように置換されることを想定しています。
tt"tt<3bbb
st<a gg&tg;gg href="aaa">bbb<
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5336日前に更新/179 KB
担当:undef