使用domxpath从节点中删除所有文本

时间:2015-05-10 08:00:57

标签: php dom domxpath

我正在尝试从节点中删除所有文本,但是当我删除文本时,它会从表格文本和内部div的文本中删除普通文本。

这是我的代码:

$dom    = new DOMDocument();
$result = $dom->loadHTML($html);
$finder = new DomXPath($dom);
//$nodes = $finder->query('//div[starts-with(@id, "post_message_")]');
$nodes = $finder->query('//div[contains(text(), "") and .//img and .//a and starts-with(@id, "post_message_")]');

但它在节点中给了我这个html:

<div id="post_message_31962189">.<br><div align="center"><img src="http://s3.postimage.odf.jpg" border="0" alt=""></div><br><b><div align="center"><font size="5"><font color="Blue"><br><br>
WATERMARKED <br><br>
ADDED 4  IN LAST PAGE<br><br></font></font></div></b><br>
=============================================================================<br>
     IN HOTEL  <br><br><b><font size="4"><font color="Red">  i promise        </font></font></b><br><br><b><div align="center"><font size="5"><font color="Blue">ADDED 4 NEW </font></font></div></b><br><br><br><a href="http://asd.sd./tml8rfg4" rel="nofollow" target="_blank">Ashoka hotel</a><br><br><br><br><img src="http:/img.jpg" border="0" alt=""></div>

我想删除除img a和br之外的所有内容。

0 个答案:

没有答案