-1
我想用这些条件在一起的XPath查询在PHP如何用XPath选择两个特定的标签类并全部删除?
//*[contains(concat(' ', normalize-space(@class), ' '), ' metadata ')]
和
*[contains(concat(' ', normalize-space(@class), ' '), ' mw-editsection ')]
我应该怎么办?
我想下面的东西,但它不工作:
$dom = new DOMDocument;
$dom->loadHTML(mb_convert_encoding($content, 'HTML-ENTITIES', "UTF-8"));
$xPath = new DOMXPath($dom);
$nodes = $xPath->query('//*[contains(concat(\' \', normalize-space(@class), \' \'), \' metadata \') and //*contains(concat(\' \', normalize-space(@class), \' \'), \' mw-editsection \ ]');
if($nodes->item(0)) {$nodes->item(0)->parentNode->removeChild($nodes->item(0));}
$content = $dom->saveHTML();
,并有我的DOM结构中一个以上metadata
和mw-editsection
班,我想删除所有元数据和MW-Editsection的类
喜欢
<body>
...
<div class="metadata"> abc </div>
<div class="mw-editsection"> xyz </div>
...
<div class="metadata"> 123 </div>
<div class="metadata"> 456 </div>
<div class="metadata"> 789 </div>
<div class="mw-editsection"> abc </div>
...
</body>
我想将它们全部删除。