【发布时间】:2019-04-03 01:34:19
【问题描述】:
我有以下html结构:
<a>
<div>
<div>
<span>
text node 1<br>
text node 2 <!--//comments-->
</span>
</div>
</div>
</a>
通过以下查询,我得到了第二个节点,但是如何获取不包括 cmets 的那个节点?
$spanx = $xpath->query('//a/div/div/span/text()[2]');
$span = $spanx->item($l)->nodeValue;
echo "<td>".$span."</td></tr>";
我有这个结果:
text node 2 //comments
我搜索:
text node 2
【问题讨论】:
-
$x("//span/text()[2]")[0].nodeValue.trim()仅获取text node 2。 -
@supputuri php 中的 sintax 怎么样?
-
@Emma filter result with regex是我最后的选择,但xpath有
comment()来获取cmets,所以我尝试解决方案来拒绝或排除评论......但感谢提示......跨度> -
如果您使用
text()节点测试,您不应该得到评论节点,除非您没有向我们展示其他一些相关的代码。 -
@Alejandro 也许你是对的,因为我测试了答案解决方案并且 cmets 已经到来,所以请检查我的代码并将其他部分发布到 cmets。 TKS。