這裏是我的工作的XML:根據Nokogiri中的其他屬性獲取某些屬性?
<order xmlns="http://example.com/schemas/1.0">
<link type="application/xml" rel="http://example.com/rel/self" href="https://example.com/orders/1631"/>
<link type="application/xml" rel="http://example.com/rel/order/history" href="http://example.com/orders/1631/history"/>
<link type="application/xml" rel="http://example.com/rel/order/transition/release" href="https://example.com/orders/1631/release"/>
<link type="application/xml" rel="http://example.com/rel/order/transition/cancel" href="https://example.com/orders/1631/cancel"/>
<state>hold</state>
<order-number>123-456-789</order-number>
<survey-title>Testing</survey-title>
<survey-url>http://example.com/s/123456</survey-url>
<number-of-questions>6</number-of-questions>
<number-of-completes>100</number-of-completes>
<target-group>
<country>
<id>US</id>
<name>United States</name>
</country>
<min-age>15</min-age>
</target-group>
<quote>319.00</quote>
<currency>USD</currency>
</order>
我需要做的是讓href
屬性,從具有link
的http://example.com/rel/order/transition/release
所以一個rel
,我該怎麼辦,使用引入nokogiri?
要小心。 Nokogiri的'xpath'返回一個NodeSet,它實際上是一個數組。如果多個節點與搜索匹配,從數組中獲取'attr'將不會爲您提供您期望的結果。例如,刪除'rel'的字符串匹配,只查找'@ rel'。你會得到第一個結果。最好使用'at'搜索,或者使用數組索引來指定您想要的NodeSet的哪個元素。 –
正確。我認爲提供的XML是規範的。對於一個通用的解決方案,你的是一個參考。 –