Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java xpath和使用日期函数的查询_Java_Xpath - Fatal编程技术网

Java xpath和使用日期函数的查询

Java xpath和使用日期函数的查询,java,xpath,Java,Xpath,我有一个xml文件,其中包含具有“date”属性的节点列表,存储日期: <root> <entry date="2011-12-04" /> <entry date="2011-11-29" /> </root> 是否可以使用xPath查询检索将“日期”属性的月份设置为11月的所有节点? 例如,我在网上看到xPath语言中存在这种函数,但我不知道如何使用它们。 我应该在java应用程序中使用它。我没有使用日期函数,但可以使用子

我有一个xml文件,其中包含具有“date”属性的节点列表,存储日期:

<root>
    <entry date="2011-12-04" />
    <entry date="2011-11-29" />
</root>

是否可以使用xPath查询检索将“日期”属性的月份设置为11月的所有节点?
例如,我在网上看到xPath语言中存在这种函数,但我不知道如何使用它们。

我应该在java应用程序中使用它。

我没有使用日期函数,但可以使用子字符串提取月份并测试该值,例如:

'//entry[substring(@date,6,2)="11"]'
正好

<entry date="2011-11-29" />

我没有使用日期函数,但您可以使用子字符串提取月份并测试该值,例如:

'//entry[substring(@date,6,2)="11"]'
正好

<entry date="2011-11-29" />

以下XPath对我适用:

//entry[month-from-date(@date)=11]

(将
entry
替换为
*
以选择具有“十一月
日期
属性”的所有节点,而不考虑节点名称。)

以下XPath适用于我:

//entry[month-from-date(@date)=11]

(将
entry
替换为
*
,以选择具有“十一月
日期
属性”的所有节点,而不考虑节点名称。)

可能需要补充的是,此函数仅适用于XPath 2.0。@Vincent Biragnet谢谢,我没有意识到这一点。可能需要补充的是,此函数仅适用于XPath 2.0。@Vincent Biragnet谢谢,我没有意识到这一点。我选择了子字符串的方式,因为我无法使用XPath 2函数。谢谢。我选择了子字符串的方式,因为我不能使用XPath2函数。谢谢