使用Ruby 1.9.3和引入nokogiri(最新):的XPath谓词组合多个元素
考虑(不,我没有想出这个):
<root>
<subelement>
<key>
<var name="id">50</var>
<var name="secondaryid">0</var>
</key>
</subelement>
<subelement>
<key>
<var name="id">50</var>
<var name="secondaryid">1</var>
</key>
</subelement>
</root>
返回父元素(<键>),它具有名称属性等于“id”且值等于50的var元素AND具有名称属性等于“secondaryid”且值等于0的var元素。不返回id = 50的节点和secondaryid = 1。
显然,这将是建关沿着线的东西:
@ doc.xpath( “// VAR [@名称= 'ID' 和文字()= 50]”)
但我无法弄清楚如何添加另一个匹配name =“secondaryid”元素的谓词。
我一直在寻找secondaryid = 0,但除此之外的小错字,完美。在此期间,我想出了另一种可行的解决方案,但更加不雅观,并且可能存在一些问题'/ var [@ name ='id'and text()= 50] /../ var [@ name =' secondaryid'和text()= 0]/..' – wadesworld 2012-04-25 10:05:56
啊是的,编辑搜索0而不是1。 – kmkaplan 2012-04-25 11:42:45