示例文件:

<h4 class="bla">July 12</h4>
<p>Tim</p>
<p>Jon</p>
<h4 class="bla">July 13</h4>
<p>James</p>
<p>Eric</p>
<p>Jerry</p>
<p>Susie</p>
<h4 class="date">July 14</h4>
<p>Kami</p>
<p>Darryl</p>

我想要做的是捕获7月13日发布的所有 p 节点。请注意,它们是 h4 的 sibling ,而不是 child 。因此,在此示例中,我想获取具有以下名称的 p 节点:James,Eric,Jerry和Susie。

我与以下内容很接近,但是它选择了7月13日 h4 节点之后的所有 p 节点,因为它们都是 sibling 。换句话说,它没有停止条件。
//h4[string() = 'July 13']/following-sibling::p

最佳答案

使用此XPath:

//p[preceding-sibling::h4[1][. = 'July 13']]

关于xml - XPath同级提取,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11461573/

10-12 04:16