2016-10-18 33 views
-1

我有很多语句这样在我的test.xml文件如何做nokogiri属性选择?

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

我如何打印所有客房与name="black"。我正在使用CSS选择器,但只有HouseRoom属性由选择器拍摄。

我开始尝试打印所有名字,无所谓House或Room。

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

回答

1

在CSS您有由一个属性匹配元素密钥值对一个语法:

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

对于未来的参考也可以链属性选择

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

或省略VAL和匹配任何存在属性的元素:

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

另外如何获取属性值?目前,当我搜索名称时,它会提供整个。我只需要黑色价值。 – InQusitive

+0

node.attributes ['name'] –