正規表現道場at PHP
正規表現道場 - 暇つぶし2ch106: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