我有一个Rails服务,它从SOAP端点读取XML。简化的结构就像:
<resource id="1287085300000102889" ...>
<prices>
<price datefrom="2018-05-25" dateto="2018-05-26" price="0.0" currency="EUR"/>
<price datefrom="2019-07-12" dateto="2019-07-13" price="1000.0" currency="EUR"/>
<price datefrom="2020-05-23" dateto="2020-05-24" price="1540.0" currency="EUR"/>
...
</prices>
</resource>
我正在使用我认为使用xpath的Nokogiri gem解析信息。我想过滤掉去年的所有价格。我正在尝试
prices = resource.xpath(".//prices/price[@dateto > '2019-01-01']")
但是它不起作用。
你可以将日期字符串转换为这样的数字然后比较:
prices = resource.xpath(".//prices/price[translate(@dateto, '-', '') > 20190101]")