我正在尝试将月/日/年元素中的字符串连接成一个显示为MM/DD/YYYY的单个值,但我无法找到在xslt 1.0中执行此操作的方法,该方法将包括“/”分隔符,就像xslt 2.0中的string-join函数一样。 我需要在不创建新模板或使用变量/ if逻辑的情况下完成此操作,因为我们在我的课程中还没有“学习”这个。我试图连接的代码部分如下:
<publishedDate>
<month>7</month>
<day>9</day>
<year>2007</year>
</publishedDate>
目前我能做到的最好的是:
<xsl:value-of select="concat(
format-number(publishedDate/month, '##00', 'date'),
format-number(publishedDate/day, '##00', 'date'),
format-number(publishedDate/year, '####', 'date')
)"/>
将日期输出为这种格式:03082014
目前为止,为了完成任务,我被迫使用一个丑陋而冗长的解决方法,看起来像这样:
<xsl:value-of select="format-number(publishedDate/month, '##00', 'date')"/>/
<xsl:value-of select="format-number(publishedDate/day, '##00', 'date')" />/
<xsl:value-of select="format-number(publishedDate/year, '####', 'date')" />
并正确输出(即 2014 年 3 月 8 日)。你们知道通过使用 1.0 函数的方法来获取这个输出吗?谢谢!
concat(format-number(...), '/', format-number(...), '/', format-number(...))
。 - helderdarocha