如何使用xpath选择不包含链接但包含特定文本的节点

大地测量学

鉴于以下HTML:

$content = 
'<html>
 <body>
  <div>
   <p>During the interim there shall be nourishment supplied</p>
  </div>
  <div>
   <p>During the <a href="#">interim</a> there shall be interim nourishment supplied</p>
  </div>
  <div>
   <ul><li>During the interim there shall be nourishment supplied</li></ul>
  </div>
 </body>
</html>';

我希望所有包含单词“ interim”的节点,但如果单词“ interim”是链接元素的一部分,则不要。

我希望返回的节点仅是第一个P节点和LI节点。

我尝试了以下方法:

'//*/text()[not(a) and contains(.,"interim")]'

...但这仍然返回A,并且还返回其父P节点的一部分(A后面的部分),而这两个都不是所需的。您可以在这里看到我的尝试:https : //glot.io/snippets/ehp7hmmglm

马丁·霍恩(Martin Honnen)

如果使用XPath表达式,//*[not(self::a) and not(a) and text()[contains(.,"interim")]]则将获得不包含a元素,不是a元素且包含包含该单词的文本节点子元素的所有元素

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用XPATH 1.0和包含特定文本的xmlstarlet选择节点

xpath:如何查找不包含文本的节点?

XPath:如何选择具有包含文本的同级节点?

使用XPATH,如何选择包含特定字符串的ANY节点

如何使用XPath查找不包含属性的XML节点?

如何在xpath中链接包含和不包含的内容?

使用 xpath 选择包含标签的文本

XPATH 按包含文本的类型选择父节点

选择“使用包含特定内部文本的子节点的单节点”。XML文档

使用Java和Xpath检查元素节点是否不包含文本?

如何使用jquery选择包含特定文本值的跨度?

如何使用 javascript 包含过滤掉不包含特定文本的文本

如何使用包含链接的节点创建图形?

使用 Selenium、python 和 Xpath 在包含特定文本的表格行中选择特定按钮

如何使用xpath选择文本最长的节点?

如何在单个 xpath 中使用包含和不包含?

XPath 以选择所有包含与其子节点中的文本不同的文本的节点

C#Xml选择节点包含节点包含节点包含内部文本包含文本

使用Jsoup删除不包含其自身文本的节点

如何使用 selenium IDE 查找文本包含的 xpath 并选择该行中的复选框

Xpath:选择包含类AND及其特定子元素包含文本的div

如何使用 jQuery 选择叶节点:包含选择器?

如何在XPath中选择包含特定子元素的元素?

使用 Scrapy 选择包含特定属性的所有 Div 的 XPATH

使用 Cypress 选择不包含文本的 cypress 元素

如何通过文本选择包含纯文本的节点和其他一些节点?

SQL-如何选择不包含特定ID的行

XPath选择仅包含文本的元素

Selenium/Xpath 选择包含文本的选项