gpt4 book ai didi

xpath - 涉及多个排除的Xpath表达式是什么?

转载 作者:行者123 更新时间:2023-12-03 17:18:56 25 4
gpt4 key购买 nike

假设我有这样的html:

<div id="wrap">
<div id="content">
<span>some content</span>
<div id="s1">
<p> some text </p>
</div>
<h2 id="sec1">
<span> some text </span>
<p> some text </p>
</h2>
<h2 id="sec1">
<span> some text </span>
<div> some more text </div>
<p> some text </p>
</h2>
<h2 id="sec2">
<span> do not select me some text </span>
<div> do not select me some more text </div>
<p> do not select me some text </p>
</h2>
<h2 id="sec3">
<span> do not select me some text </span>
<div> do not select me some more text </div>
<p> do not select me some text </p>
</h2>
</div>
</div>


XPath表达式将选择除h2 id = sec2和h2 id = sec3下的所有文本节点之外的所有文本节点?

最佳答案

从字面上看,“除h2 id = sec2和h2 id = sec3下的所有文本节点”:

//text()[not(ancestor::h2[@id='sec2' or @id='sec3'])]


但是我怀疑您并不是真的想要那个,因为您将丢失 <span><p>结构。推断您要选择内容 <div>的所有子元素是否正确,除了ID为sec2和sec3的 <h2>之外?如果是这样的话,

/div/div[@id = 'content']/*[not(self::h2 and (@id = 'sec2' or @id = 'sec3'))]


但是您还应该意识到, <h2>元素的文本内容仅仅是节的标题,而不是节的整个文本。因此,看起来好像将div和p放入h2内,您并没有按设计方式使用它。

关于xpath - 涉及多个排除的Xpath表达式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6254523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com