You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

XSLT xp20日期时间解析:如何将mm/dd/yyyy转为yyyy-mm-dd格式

问题原因

你当前使用xp20:format-dateTime没有得到预期结果,核心原因是<date>节点内存储的是MM/DD/YYYY格式的普通字符串,不属于XPath 2.0+ 规范的dateTime/date类型,格式转换函数无法直接识别非标准结构的日期字符串。

解决方案

方案1:先解析标准日期再格式化(XSLT 2.0及以上版本适用)

先用parse-date指定输入字符串的格式解析为标准日期类型,再调用格式化函数输出目标格式:

xp20:format-date(xp20:parse-date(/Input/date, '[M01]/[D01]/[Y0001]'), '[Y0001]-[M01]-[D01]')

注意输入的日期仅包含年月日,无需使用format-dateTime,调用format-date即可。

方案2:字符串直接拼接(全版本兼容,无函数依赖)

如果你的输入格式固定为MM/DD/YYYY,可以直接截取对应位置的字符串拼接,适配所有XSLT版本,无需依赖扩展函数:

concat(
  substring(/Input/date, 7, 4),
  '-',
  substring(/Input/date, 1, 2),
  '-',
  substring(/Input/date, 4, 2)
)

内容的提问来源于stack exchange,提问作者sivakumar kala

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 08:27:00