XML xpath,获取父元素直到一个特定的元素

前端之家收集整理的这篇文章主要介绍了XML xpath,获取父元素直到一个特定的元素前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在寻找正确的xpath语法来获取元素的特定父代。
例:
root
   |- div
   |     |
   |     |----??? ---|
   |     |           |-a [class=1]
   |     |                      |- text[ A TEXT]
   |     |
   |     |
   |     |
   |     |-text[THE TEXT]
   |
   |-div 
   |    |-text[THE TEXT]
   |
   |-div 
   |    |-text[THE TEXT]

我想得到文本“文本”,但在同一个div内包含一个[class = 1]的文本。这样的事情

//div//a[@class=1]/text[contains(.,'A TEXT')]/parent::*/parent::*.... <till div element>  /text
给定XML
<?xml version="1.0"?>
<root>
    <foo id="id1">
        <foo id="i2">
            <baz/>
        </foo>
    </foo>
</root>

您可以使用XPath表达式从baz找到最近的祖先foo元素:

//baz/ancestor::foo[1]

哪个将选择id“i2”的foo元素节点。

所以在你的例子中(如果我明白了),一旦你得到了你想要的“a”元素,你可以通过在“/ ancestor :: div [1]”中附加树来“离开”到最近的祖先div表达。

猜你在找的XML相关文章