[英]Matching all the elements and text excluding one by using XPath
<div class="main">
<div class="column-items">
<div>
abcd
</div>
<h2>Thomas</h2>
<p>Ron</p>
</div>
<p>Dave</p>
Sample text here......
<b>Andrew</b>
El murciélago de Bacardí tiene su!!
<p>abcdef</p>
</div>
在上述结构中,我希望 XPath 获取所有内容,包括<div class="main">
中的文本,除了我不想要第一个 div 元素的内容,即<div class="column-items">
.
如果您想要 'main' div 中的所有文本节点,不包括 'column-items' div 中的文本节点,请尝试:
//div[@class='main']//text()[not(ancestor::div[@class="column-items"])]
问题标题要求除 one 之外的所有元素和文本,您在 go 上说应该排除第一个元素。 如果您实际上只想要满足该条件的文本节点,请参阅@JaSON 的答案。
如果您确实也想要所有元素,请使用此 XPath:
//div[@class='main']/node()[not(self::div[1])]
基于 position,或此 XPath,
//div[@class='main']/node()[not(self::div[@class="column-items"])]
基于属性值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.