Xpath - 如何选择兄弟节点包含特定文本的子节点

时间:2012-12-05 13:52:44

标签: xpath subtree

我想使用XPath选择包含带有“ABC”的<name> - 标签的子树,而不是来自以下xml的另一个。这可能吗?作为一个小问题,我会使用哪些关键字在Google上找到类似的内容(例如,按属性选择子树,我会使用术语)?

<root>
  <operation>
    <name>ABC</name>
    <description>Description 1</description>
  </operation>
  <operation>
    <name>DEF</name>
    <description>Description 2</description>
  </operation>
</root>

2 个答案:

答案 0 :(得分:1)

使用

/*/operation[name='ABC']

关于你的第二个问题:我强烈建议依赖在线资源(有一些不太好)但是要读一本关于XPath的好书

查看此处列出的一些资源https://stackoverflow.com/questions/339930/any-good-xslt-tutorial-book-blog-site-online/341589#341589

答案 1 :(得分:1)

对于您的第一个问题,我认为更准确的方法是://operation[./name[text()='ABC']]。根据this,我们也可以做到:<登记/> //operation[./name[text()[.='ABC']]]