xslt format-date不适用于格式“周五,2019年5月10日01:15:00 GMT”

时间:2019-05-15 08:14:06

标签: xslt-2.0 date-formatting

在格式为“ Fri,10 May 2019 01:15:00 GMT”的日期上使用format-date函数时,出现错误:无效的日期“ Fri,10 May 2019 01:15:00 GMT”(非数字年份部分)

我想获取dd / MM / yyyy格式。

1 个答案:

答案 0 :(得分:0)

如果您使用XSLT 2,则可以使用自2017年以来更新的处理器(例如Saxon 9或AltovaXML)(例如9.8版或更高版本中的Saxon或2017版或更高版本中的Altova),以支持XSLT 3和XPath 3.1。然后利用iconSize( match(get("selected"), // property selected is a number literal(1), // default value stop(0, 0.75), // if not selected set icon size to 0.75 of original value stop(1, 1) // if selected set it to original size ) ) 函数(https://www.w3.org/TR/xpath-functions/#func-parse-ietf-date)将您的输入字符串解析为parse-ietf-date,然后可以在其上应用xs:dateTime函数:

format-dateTime

https://xqueryfiddle.liberty-development.net/6qM2e2m/1

您当前的方法不起作用,因为format-dateTime(parse-ietf-date('Fri, 10 May 2019 01:15:00 GMT'), '[D01]/[M01]/[Y0001]') 函数适用于format-date而不适用于任意格式的日期字符串。您在示例中显示的特定格式可以通过xs:date函数进行解析。