xml - 作为另一个节点的同级节点的节点内的节点的 xpath

标签 xml xpath

假设我有一些如下所示的 html:

<section>
    <header>
        <h1>Foo</h1>
    </header>
    <section>
        <a href="#">one</a>
    </section>
    <section>
        <a href="#">two</a>
    </section>
</section>
<section>
    <header>
        <h1>Bar</h1>
    </header>
    <section>
        <a href="#">one</a>
    </section>
    <section>
        <a href="#">two</a>
    </section>
</section>

我想获取文本为“two”的 anchor ,但必须属于标题为“Bar”的部分标记(即上述 html 中的最后一个 anchor )。

使用 Bar 文本获取 header 元素很容易:

//header/h1[text()='Bar']

也可以轻松获取位于节元素中的文本“two”的两个 anchor :

//section/a[text()='two']

这当然会返回两个 anchor 。

我只是不确定如何将两者结合起来,以便我只能在包含“Bar”的标题元素的同级元素中找到 anchor 。

最佳答案

//section[header/h1 = 'Bar']/section/a[. = 'two']

关于xml - 作为另一个节点的同级节点的节点内的节点的 xpath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7266657/

相关文章:

c# - XML XPath SelectSingleNode 问题

java - 使用 XPath 获取父元素的同级和后续文本

Android:PreferenceManager 与 Context.getSharedPreferences() 以及为什么后者让我失败

java - 写在一个xml的末尾

xml - 无法解析服务器名称或地址,为什么?

java - 即使它正确执行,但在 bean 定义中使用作用域时,它会给出警告错误

xml - 如何使用xPath和XmlNamespaceManager正确查询xml片段

php - 使用php在xml中插入节点

python - 单击 Python Selenium 中特定行上表中的按钮

javascript - XSLT 和 XPATH 在现代浏览器中的情况如何?