Java XPath通配符

Java XPath通配符,java,xml,xpath,Java,Xml,Xpath,我有一个xml,它类似于 <A> <B> <C1> <D> some text 1 </D> </C1> <C2> <D> some text 2 </D> </C2> </B> </A> 一些文本1 一些文本2 我想使用通配符来获取所有D元素节点的

我有一个xml,它类似于

<A>
   <B>
      <C1>
          <D> some text 1 </D>
      </C1>
      <C2>
          <D> some text 2 </D>
      </C2>
   </B>
</A>

一些文本1
一些文本2

我想使用通配符来获取所有D元素节点的文本。我尝试了/A/B/*/D/text(),但似乎不起作用。感谢您的帮助。

使用
/
操作器。它将为您提供文档中的所有
D
元素

//D/text()

D怎么样?这应该给出您所要查找的内容。您的XPath
/A/B*/D/text()
是正确的,将给出预期的结果。执行查询的方式可能有问题。它也比
//D
快得多,因为这将查看此树中的所有节点,这可能会非常多(当然这取决于您的输入数据)