xml – 选择包含“foo”的属性的正确XPath是什么?

给定这个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的精神。

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念