我是Altova Stylevision的新手。我需要将日期从 格式化dd/mm/yy
为dd/Mon/yyyy
。
我已经尝试了 Altova 手册中建议的选项,但它似乎无法识别格式。
我是Altova Stylevision的新手。我需要将日期从 格式化dd/mm/yy
为dd/Mon/yyyy
。
我已经尝试了 Altova 手册中建议的选项,但它似乎无法识别格式。
这个问题已经差不多三周了,所以也许同时您已经找到了答案,例如通过查看Michael Kay的XSLT 2.0 和 XPath 2.0 程序员参考的第 781 页。或者也许是网络上的其他地方。
要在 XSLT 2.0 中实现您想要的,我们首先需要将您的类似日期的字符串转换为国际日期时间表示法。幸运的是,我们只需要关心日期部分,它应该采用YYYY-MM-DD
.
之后,我们“只”需要format-date
使用正确的图片字符串进行调用:
<!-- first, convert your date into int'l date-notation with a regex -->
<xsl:variable
name="date"
select="replace('14/09/2014', '(\d+)/(\d+)/(\d+)', '$3-$2-$1')" />
<!-- then, use a properly formatted picture string to get the abbrev. month -->
<xsl:value-of
select="format-date(xs:date($date), '[D01]/[MNn,3-3]/[Y]')" />
使用像Saxon或Exselt(没有尝试Altova)这样的符合处理器的输出是这样的14/Sep/2014
:
图片字符串的工作方式如下(来自我引用的同一本书):
[xxxx]
是一个变量标记[D01]
将日期部分格式化为两位数的日期(如果您不想要前导零,请忽略零)[MNn,3-3]
将月份格式化为M
as case-word withNn
宽度为 min 3 和 max 3 with 3-3
.[Y]
将默认格式的年份格式化为四位数年份。如果您需要月份的全名,请删除宽度说明符。如果您需要其他输出,请查看 XPath 3.0 规范中的表格,了解可以在图片字符串中使用的内容。