-1

私はこのhtmlテキストを持っています:

<strong><em>La congiura della pietra nera</em></strong>
<p><a href="xxxxx">

<img class="alignleft size-medium wp-image-75372" title="mytitle" 

src="my.jpg" alt="" width="247" height="350"></a>

<strong>Trama:</strong> La storia ruota attorno ad una setta di guerrieri depositaria dei più arcani segreti.</p>

いくつかの単語の prey_replace を作成する必要があります。php で次の正規表現を使用します。

$mycontent = preg_replace('{'.$words.'(?![^<>]*>)}i','otherwords',$mycontent);

非常にうまく機能しますが、タグ内のテキストも除外する必要があります。これを行うにはどうすればよいですか?

どうもありがとう

4

1 に答える 1

1

次のサンプル コードを参照してください。

    <?php
$foo = '<p><strong>SCHEDA FILM</strong>:<strong> <em>La congiura della pietra nera</em></strong></p>';
$bar1 = 'La congiura della pietra nera';
$bar2 = 'SCHEDA FILM';
echo preg_replace('/(<(?!em\b)(\w+)[^>]*>)'. $bar1 . '(<\/\2>)/', "$1do something$3", $foo);
//output '<p><strong>SCHEDA FILM</strong>:<strong> <em>La congiura della pietra nera</em></strong></p>'

echo preg_replace('/(<(?!em\b)(\w+)[^>]*>)'. $bar2 . '(<\/\2>)/', "$1do something$3", $foo);
//output '<p><strong>do something</strong>:<strong> <em>La congiura della pietra nera</em></strong></p>'     

?>
于 2012-08-01T15:48:47.087 に答える