加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-16 08:04:30 所属栏目:百科 来源:网络整理
导读:我正在寻找正确的xpath语法来获取元素的特定父代。 例: root |- div | | | |----??? ---| | | |-a [class=1] | | |- text[ A TEXT] | | | | | | | |-text[THE TEXT] | |-div | |-text[THE TEXT] | |-div | |-text[THE TEXT] 我想得到文本“文本”,但在同一
我正在寻找正确的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表达。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读