首页 文章

Xpath如何在节点选择上使用和声明以及父条件

提问于
浏览
0

假设我有这样的XML:

<my-parent-tag attr="">
  <my-child-tag/>
</my-parent-tag>
<my-child-tag/> <!--I don't want to select this one-->

我想找到所有my-child-tags,其父节点my-parent-tag为attr =“” . 我如何在Xpath中表达这一点?我试过了

//my-child-tag and [../my-parent-tag[@attr='']]

但是,我最终获得了Xpath-no-node选择的反馈 . 帮助赞赏:)

3 回答

  • 0

    为什么不使用正则表达式 //parent/child

    从父类中选择具有属性的所有后代标记:

    //my-parent-tag[@attr='']//my-child-tag
    

    从父类中选择具有属性的所有子标记:

    //my-parent-tag[@attr='']/my-child-tag
    
  • 2

    你可以使用 //my-child-tag[parent::my-parent-tag[@attr='']]

  • 0

    这个XPath,

    //my-parent-tag[@attr='']/my-child-tag
    

    将选择所有 my-child-tag 元素,其父级为 my-parent-tag ,其 attr 属性值为 '' .

相关问题