-3

重複の可能性:
正規表現は、XHTML自己完結型タグを除くオープンタグと一致
しますPHPでHTMLを解析および処理する方法は?
シンプル:「すべての間」をphpに置き換える方法は?

PHPの特定のテキストを含むアンカータグのすべてのテキストを変更する方法を探しています

すなわち:

<a href="stackoverflow.com"><strong>This is text</strong></a>

「これはテキストです」を検索してから、テキストが含まれているアンカータグを別のものに置き換えます。

正規表現を使用するのが最も簡単ですか?

ありがとう

4

2 に答える 2

1

Html は xml のように扱うことができます。これを行うには、php xml 関数を使用する必要があります。http://php.net/manual/en/book.xml.phpを参照してください。

于 2012-10-23T00:54:51.667 に答える
0

これは次の方法で簡単に実行できますDOMXpath

$s =<<<EOM
<a href="stackoverflow.com"><strong>This is text</strong></a>
EOM;

$d = new DOMDocument;
$d->loadHTML($s);
$x = new DOMXPath($d);

foreach ($x->query("//a[contains(strong, 'This is text')]") as $node) {
        $new = $d->createTextNode('Hello world');
        $node->parentNode->replaceChild($new, $node);
}

echo $d->saveHTML();
于 2012-10-23T02:08:24.550 に答える