2016-10-18 32 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'] –