给定这个XML,什么XPath返回其prop属性包含Foo的所有元素(前三个节点):
<bla> <a prop="Foo1"/> <a prop="Foo2"/> <a prop="3Foo"/> <a prop="Bar"/> </bla>
//a[contains(@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>
这个网站是伟大的测试这种事情
http://www.xmlme.com/XpathTool.aspx
编辑:
另一个要注意的是,虽然上面的XPath将返回正确的答案为特定的xml,如果你想保证你只获得元素“blah”中的“a”元素,你应该像其他人提到也使用
/bla/a[contains(@prop,'Foo')]
这将搜索你的整个xml文档中的所有“a”元素,无论是否嵌套在“blah”元素
//a[contains(@prop,'Foo')]
我添加了这是为了彻底和在stackoverflow的精神。