使用Nokogiri :: XML如何基于另一个属性检索属性的值?Nokogiri ::基于另一个XML属性值的XML解析值
XML文件:
<RateReplyDetails>
<ServiceType>INT</ServiceType>
<Price>1.0</Price>
</RateReplyDetails>
<RateReplyDetails>
<ServiceType>LOCAL</ServiceType>
<Price>2.0</Price>
</RateReplyDetails>
而且我想检索本地服务类型是2.0
我可以采取的值,而不任何与此条件的价格:
rated_shipment.at('RateReplyDetails/Price').text
而且可能我可以这样做:
if rated_shipment.at('RateReplyDetails/ServiceType').text == "LOCAL"
rated_shipment.at('RateReplyDetails/Price').text
但是,有没有这样做的优雅和干净的方式?
在选择器中使用CSS'contains'要小心,因为它是子字符串匹配,这意味着它将在字符串中的任何位置匹配“INT”或“LOCAL”,可能会导致错误匹配。 –
这应该也适用于我,因为我的文本在那里非常独特。我选择了第一个回答正确的答案作为答案,但这也应该起作用。谢谢各位 – user664859
@theTinMan感谢您的提醒,其实我知道这个问题,在我粘贴这个答案之前,我尝试了你之前做过的方式,但是失败了,现在我知道现在使用'text'的正确方法。谢谢。 –