给定此XML,XPath将返回其prop属性包含Foo的所有元素(前三个节点):
<;bla>;
<;a prop=“Foo1”/>;
<;a prop=“Foo2”/>;
<;a prop=“3Foo”/gt;
<;a prop=“Bar”/>;
</bla>;
//a[包含(@prop,'Foo')]
如果我使用此XML返回结果,则可以正常工作
<;bla>;
<;a prop=“Foo1”>;a</a>;
<;a prop=“Foo2”>;b</a>;
<;a prop=“3Foo”>;c</a>;
<;a prop=“Bar”>;a</a>;
</bla>;
编辑:
另一件需要注意的事情是,尽管上面的XPath将返回特定xml的正确答案,但如果您想保证只获得元素“bla”中的“a”元素,那么您应该像其他人提到的那样使用
/bla/a[包含(@prop,'Foo')]
这将搜索整个xml文档中的所有“a”元素,而不考虑嵌套在“blah”元素中
//a[包含(@prop,'Foo')]
我加上这句话是为了彻底起见,也是为了表达我的观点。:)