当有属性名称测试时,我的xpath工作文件。
<A>
<B test="Added">
<C>test</C>
</B>
</A>
XPATH
//B[@test !='Deleted']/C/text()
但是,当没有属性名称测试时,相同的 XPATH 不起作用。
<A>
<B>
<C>test</C>
</B>
</A>
XPATH
//B[@test!='Deleted']/C/text()
即使没有属性名称测试,我应该怎么做才能使其工作。
尝试改用not(@test ='Deleted')
:
//B[not(@test ='Deleted')]/C/text()
此 XPath 匹配B
属性不等于'Deleted'
test
元素,包括属性test
不存在的情况。
演示: xpathtester
, xpatheval
.XML:
<root>
<A>
<B test="Added">
<C>test</C>
</B>
</A>
<A>
<B>
<C>test</C>
</B>
</A>
</root>
输出:
test
test