给出以下html:
<html>
<body>
<div>
<p>During the interim there shall be nourishment supplied</p>
</div>
<div>
<a href="/interim">In the interim</a>
</div>
</body>
</html>
以及以下xpath:
//*[contains(.,'interim')]
由此返回的元素包括HTML标记,BODY标记等。因此返回每个祖先父级。
我只想要直接的容器节点,即P和A。
答案 0 :(得分:1)
您可以使用
//*[contains(text(),'interim')]
即。将.
替换为text()
这将检查具有包含文本interim
的文本节点子项的所有元素。
不同之处在于.
与字符串相关的函数一起使用时,会返回元素的整个文本内容,这就是它返回每个祖先的原因。