Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 如何在xslt中将日期从一种格式转换为另一种格式_Xml_Xslt - Fatal编程技术网

Xml 如何在xslt中将日期从一种格式转换为另一种格式

Xml 如何在xslt中将日期从一种格式转换为另一种格式,xml,xslt,Xml,Xslt,我收到的请求包含以下格式的日期: <CreatedDate>08/24/2014 21:53:14</CreatedDate> 08/24/2014 21:53:14 我需要使用xslt将值转换为YYYY-MM-DD格式。我可以通过某种命名模式识别所有“目标”节点(它们都称为somethingDate)。是否有现成的语法/函数?如果需要对输入中的多个节点执行此操作,最好使用命名模板(或函数,如果使用XSLT 2.0),例如: <xsl:template name

我收到的请求包含以下格式的日期:

<CreatedDate>08/24/2014 21:53:14</CreatedDate>
08/24/2014 21:53:14

我需要使用xslt将值转换为YYYY-MM-DD格式。我可以通过某种命名模式识别所有“目标”节点(它们都称为somethingDate)。是否有现成的语法/函数?

如果需要对输入中的多个节点执行此操作,最好使用命名模板(或函数,如果使用XSLT 2.0),例如:

<xsl:template name="formatDate">
    <xsl:param name="mmddyyyy"/>
    <xsl:value-of select="substring($mmddyyyy, 7, 4)"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="substring($mmddyyyy, 1, 2)"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="substring($mmddyyyy, 4, 2)"/>
</xsl:template>

-
-

假设您使用的是XSLT 1.0,那么可用的函数是有限的。仅限于substring()和substring-before()等函数。