如何比较xpath中的日期以选择节点

时间:2011-08-18 13:37:33

标签: xml xpath

我希望根据xpath中给出的条件获取节点以进行日期比较。我怎么能用xpath做到这一点?

我需要使用adjust-dateTime-to-timezone吗?

1 个答案:

答案 0 :(得分:3)

XPath 2.0有一个number of date/time functions and operators来帮助处理日期。

假设您有一个这样的XML文档:

<doc>
    <event date="2011-02-05">foo</event>
    <event date="2011-08-01">bar</event>
    <event date="2011-08-20">baz</event>
    <event date="2011-11-07">qux</event>

</doc>

并且您希望按2011年8月的@date过滤事件。

您可以使用此XPath:

/doc/event[xs:date(@date) le xs:date('2011-08-31') and 
                            xs:date(@date) ge xs:date('2011-08-01')]

并选择eventbar的{​​{1}}元素。