<Results>
<Details>
<Number> 01 </Number>
<Seq> 01 </Seq>
<Details>
<Details>
<Number> 02 </Number>
<Seq> 01 </Seq>
<Details>
<Details>
<Number> 01 </Number>
<Seq> 03 </Seq>
<Details>
</Results>
我愿意:
.selectNodes("//Results/Details/Number = '1'");
选择所有 Number 节点 = 1,但它返回“true”!而不是节点列表。
如何获取所有节点 Number = 1 ?
最佳答案
您的表达式“//Results/Details/Number = '1'”
选择所有//Results/Details/Number
,然后返回如果这些节点之一 -转换为字符串时 - 等于'1'
。
(并且给定您的 XML 文档,这应该返回 false
而不是 true
)。
要选择文本内容等于 1
的所有 Number
节点,请使用表达式:
//Results/Details/Number[. = 1]
关于java - Dom4j selectNodes 在 XPATH 中带有过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32872211/