2010年5月19日水曜日

正規表現で、テーブルタグを一掃。

tableタグを一掃したくて、正規表現を書いてみたら、
うまくいったようなのでメモです。

$text="<tr><td><img>";
$pattern="(<t(d|r|able).*?>|<\/t(d|r|able).*?>)";
$result=preg_replace("/$pattern/","",$text);
echo $result;

今、tableで組んだ古いスタイルのサイトをリニューアル中なので、これで一気に取り組めそうです。
正規表現って、すごいすね。

「.*?」という「貪欲でない」正規表現、かなり使えますね。
これがないと、他の部分まで食ってしまう。

以下、PHPマニュアルの参照箇所です。

http://jp.php.net/manual/ja/regexp.reference.repetition.php


(■追記:&nbsp;もたくさん仕込まれていることしばしばなので、ついでに
$pattern="(<t(d|r|able).*?>|<\/t(d|r|able).*?>|&nbsp;)";
としてみました。)

0 件のコメント:

コメントを投稿