3

テンプレートのすべての単語を置き換える必要がありますが、これらの単語は{}と[]で囲まれています。助けてください

$content = '<div class="header header">{header} {header2} [header][/header]</div>';
$content = preg_replace("/(\s|\"|\')(^$)header(^$)(\s|\"|\')/is",'new_class',$content);

出力は次のようになります。<div class="new_class new_class">{header} {header2} [header][/header]</div>

4

2 に答える 2

0

これはうまくいくはずです

$content = '<div class="header header">{header} {header2} [header][/header]</div>';
$content = preg_replace("/([\\s\"'])header(?=[\\s\"'])/is",'$1new_class',$content);

"'これは、空白または空白で囲まれたすべての「ヘッダー」を置き換えます。

于 2012-11-29T08:19:55.610 に答える
0
$result = preg_replace('/header(?![^{}[\]]*[\]}])/', 'new_class', $subject);

次の角かっこまたは中かっこが閉じかっこまたは中かっこでない場合にのみ、に置き換えheaderられます。new_class

于 2012-11-29T08:27:53.080 に答える