1
私は、文書内のすべてのテキストを取得するためにSymfony DomCrawlerを使用しています。HTML文書内のすべてのTEXT要素を取得する方法
$this->crawler->filter('p')->each(function (Crawler $node, $i) {
// process text
});
要素の外にある<body>
内のすべてのテキストを収集しようとしています。
<body>
This is an example
<p>
blablabla
</p>
another example
<p>
<span>Yo!</span>
again, another piece of text <br/>
with an annoy BR in the middle
</p>
</body>
私はPHPのSymfonyを使用しており、XPath(推奨)またはRegExを使用できます。ドキュメント内のすべてのテキストノードは次のようになり
string(/)
:
私はsymfonyのDomCrawlerについて知っているが、XPathのテキストノードを取得するためだろう '
'内で直接であることはありません: '//ボディ/テキスト()'(一部のXPathプロセッサは、しかし戻ってテキストノードをサポートしていません) – har07これはネストされた要素のテキストを考慮に入れていますか? –
いいえ、あなたがそれらに行っても、別の '/': '// body // text()'を追加するだけです。 – har07