xsl格式的日期(substring + concatenate?)

时间:2009-12-21 08:41:39

标签: c# .net xml xslt

我有输入

<Date value="20091223"/>

我希望输出为

<Date>23122009</Date>

我试图使用substring函数重新格式化日期

<xsl:value-of select="substring($Date,1,4)"/>

但是如何将提取的年份和月份和日期连接在一起。

4 个答案:

答案 0 :(得分:5)

假设没有保留空格,只需将它们一个接一个地放置:

<xsl:value-of select="substring($Date,7,2)"/>
<xsl:value-of select="substring($Date,5,2)"/>
<xsl:value-of select="substring($Date,1,4)"/>

如果保留了空格,只需将它们全部放在一行上,它们之间没有空格。

Xpath concatenation函数也可以使用,但我觉得它不太可读:

<xsl:value-of select="concat(substring($Date,7,2), substring($Date,5,2), substring($Date,1,4))"/>

答案 1 :(得分:2)

<xsl:value-of select="substring(Date/@value, 7, 2)"/>
<xsl:value-of select="substring(Date/@value, 5, 2)"/>
<xsl:value-of select="substring(Date/@value, 1, 4)"/>

答案 2 :(得分:1)

看一下XSLT concat function。在你的情况下,它将是这样的(未经测试):

<xsl:value-of select="concat(substring($Date,1,4), substring($Date,7,2), substring($Date,5,2))"/>

答案 3 :(得分:1)

试试这个

<xsl:value-of select="concat(substring($Date,7,2),substring($Date,5,2),substring($Date,1,4))"/>