如何与Nokogiri找到兄弟姐妹组

时间:2012-08-09 17:40:35

标签: ruby xml nokogiri

例如我有这个XML:

<root>
  <group>
    <person gender="male" name="Daniel" />
  </group>
  <group>
    <person gender="male" name="Peter" />
    <person gender="female" name="Claudia" />
  </group>
  <group>
    <person gender="female" name="Andrea" />
  </group>
</root>

我想找到只有男性和女性的群体。我只想找到:

  <group>
    <person gender="male" name="Peter" />
    <person gender="female" name="Claudia" />
  </group>

因为在该组内部有男性和女性。

我不想找到:

  <group>
    <person gender="female" name="Andrea" />
  </group>
  <group>
    <person gender="male" name="Daniel" />
  </group>

1 个答案:

答案 0 :(得分:2)

我对Nokogiri并不完全熟悉,但我确实知道xpath。如果您只想选择男性和女性组,您可以这样做

//group[person/@gender='male' and person/@gender = 'female']

它应该返回

<group> 
  <person gender="male" name="Peter"/>  
  <person gender="female" name="Claudia"/> 
</group>