2010年08月02日

preg_replace_callback 関数

 
このブログを作ろうとしていて、
(code] ほげほげ [/code) の中の php タグにも br タグが入るようになったので
どうしようかと迷ってたが


preg_replace_callback 関数を使えばいい!



ということに気づいた。
初めて使ったのでめちゃくちゃ難しかったが使い道をメモ。

$text = 'ほげらんこ<pre>いいですわ。<br />ほんっとに。<br />遊園地<br><br /></pre>いいかんじ。<br>めっちゃ改行も。いい感じ。<br /><br>';



の文字列の中から pre タグに囲まれた brタグのみ、全て削除したい場合

<?
$text = 'ほげらんこ<pre>いいですわ。<br />ほんっとに。<br />遊園地<br><br /></pre>いいかんじ。<br>めっちゃ改行も。いい感じ。<br /><br>';

// コールバック関数
function delbr($matches) {

foreach($matches as $key => $v){
$matches[$key] = preg_replace('/<br.*?>/','',$v);
}

return $matches[0];
// return '[ ここがマッチ ]';
}


$text = preg_replace_callback("/<pre.*?<\/pre>/is","delbr",$text);
echo $text;
?>


って感じでいけるみたい。 delbr の内容がいまいちわからんかったら
return ['ここがマッチ'];
ってやってみるとわかりやすい。



関連するタグ: 正規表現 PHP
あなたにとって有用な記事でしたか?是非ブックマークしておくことをおすすめします。
 




ライブラリを配布しちゃったり
webデザイン
HTMLコーディング
CSS
Fireworks
Dreamweaver
携帯サイト
webプログラム
PHP
正規表現
cakephp
MYSQL
javascript
webマーケティング
adwords
analytics
windows7
ショートカットキー
おすすめ情報
サイト
facebook
ライブラリ
配布
アプリ
iphone
ipad
サーバー
さくらサーバー
全ての記事を読む


[ うらこ先生を応援する! ]
by相性占い.net



トップ - 最新の記事一覧 - お問い合わせ