xpath 查找不包含子节点的节点
Posted
技术标签:
【中文标题】xpath 查找不包含子节点的节点【英文标题】:xpath find node that does not contain child 【发布时间】:2011-07-24 18:29:55 【问题描述】:我正在尝试创建一些 xpath,它将找到所有不包含 img
标签的 a
标签,以便诸如
<a href="http://aol.com">link</a>
匹配,但是
<a href="http://yahoo.com"><img src="http://yahoo.com/logo.png"></a>
没有。
当然,我可以通过两部分搜索来做到这一点,但我确信一定有某种方法可以用 xpath 做到这一点。
【问题讨论】:
【参考方案1】://a[not(img)]
如果可以的话,尽量避免使用//
。另请注意,这只会排除直接包含img
s的a
s。
【讨论】:
XPath 表达式,用于 “任何不具有img
后代元素的 a
元素”://a[not(.//img)]
我需要第一个没有链接的 td //table/tr/td[1][not(a) and not(b)]
。 html 使用 td 作为表头,表头被包裹在 <b>
中,所以我也不得不跳过这些。以上是关于xpath 查找不包含子节点的节点的主要内容,如果未能解决你的问题,请参考以下文章
如何同时更新不同的节点子节点firebase android
XPath / XQuery:在节点中查找文本,但忽略特定后代元素的内容