nokogiri属性选择怎么做?

How to do nokogiri attribute selection?

我的 test.xml 文件中有很多这样的语句

<House name="bla"><Room id="bla" name="black" ></Room></House>

如何使用 name="black" 打印所有房间。我正在使用 CSS 选择器,但选择器仅采用 HouseRoom 属性。

我开始尝试打印所有姓名,无论是 House 还是 Room。

nodes = doc.css("name")。但它给出 null 作为输出。所以我无法继续。

在 CSS 中,您有一个通过属性键值对匹配元素的语法:

nodes = doc.css("[name='black']")

为了将来参考,您还可以链接属性选择器

nodes = doc.css(".my-class[name='black'][foo='bar']")

或者省略 val 并匹配存在该属性的任何元素:

nodes = doc.css("[name]")