首页 > 解决方案 > Nokogiri xpath - 使用属性条件计算 XML 元素的出现次数

问题描述

我的 XML 中有这个标签:

<rooms>
   <room id="1" beds="1" windows="0"/>
   <room id="2" beds="2" windows="0"/>
   <room id="3" beds="2" windows="0"/>
 </rooms>

我想计算有 1 张床和没有窗户的房间的出现次数,并计算有 2 张床和没有窗户的房间的出现次数。我在 Ruby 中使用 nokogiri xpath,所以我正在寻找这样的东西:

这个计数->xpath: "//rooms//room[@beds=1 and @windows=0]"

这个计数->xpath: "//rooms//room[@beds=2 and @windows=0]"

谢谢 !

标签: rubyxpathnokogiri

解决方案


尝试用count(). 所以:

count(//rooms//room[@beds=1 and @windows=0])

count(/rooms//room[@beds=2 and @windows=0])

应该分别输出12


推荐阅读