如何使用XPath选择“失败”值?
<Properties>
<Property Descriptor="100">1377349460.298</Property>
<Property Descriptor="101">1</Property>
<Property Descriptor="24000">fail</Property>
</Properties>
<Properties>
<Property Descriptor="100">1377349462.298</Property>
<Property Descriptor="101">1</Property>
<Property Descriptor="24000">pass</Property>
</Properties>
我尝试了Property[@Value="fail"]
,但它不起作用。
答案 0 :(得分:3)
要选择包含字符串Property
的{{1}}元素,请使用:
fail
或
Property[.='fail']
正如巴拜正确建议的那样。
Property[text()='fail']
表示“当前节点”,.
表示“当前节点中的第一个文本”,因此表达式意味着“选择一个名为text()
的元素,其中包含Property
}')
如果您想在当前节点使用之下的任何级别中找到fail
,则假设当前节点位于Property
元素的正上方:
Property
在XPath中,当在测试中使用时,非空节点集被视为//Property[.='fail']
- 因此,如果在任何地方有任何true
节点,则上述XPath(在某种意义上)已经是测试Property
。
如果要计算任何级别的fail
个节点包含Property
使用的节点数:
计数(//属性[。= '失败'])
答案 1 :(得分:2)
你也可以这样做: -
//Property[text()='fail']