Xml 使用xslt 1.0将日期从DD.MMM.YYYY转换为YYYY-MMM-DD

Xml 使用xslt 1.0将日期从DD.MMM.YYYY转换为YYYY-MMM-DD,xml,date,xslt,transformation,date-formatting,Xml,Date,Xslt,Transformation,Date Formatting,我找到了一些解决方案,但没有一个对我不起作用。 因为它不能在中。我需要在foreach中转换日期,因为大约是80,然后是导出结束。我需要转换和转换交货日期。有什么想法吗?请帮忙 <?xml version="1.0" encoding="Windows-1250"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template

我找到了一些解决方案,但没有一个对我不起作用。 因为它不能在
中。我需要在foreach中转换日期,因为
大约是80,然后是导出结束。我需要转换和转换交货日期。有什么想法吗?请帮忙

<?xml version="1.0" encoding="Windows-1250"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">     

 <xsl:template match="/">
<dat:dataPack version="2.0" id="Usr01" ico="36255789" application="Transformace" note="Užívateľský export" xmlns:dat="http://www.stormware.cz/schema/version_2/data.xsd">
       <xsl:variable name="discount" select="0.20" />
<xsl:for-each select="OBERON/Data/InvoicesIssued/Record">
       <dat:dataPackItem version="2.0" id ="{@IDNum}">

        <inv:invoiceType>issuedInvoice</inv:invoiceType>
    <inv:number>
 <typ:numberRequested><xsl:value-of select="@Number"/></typ:numberRequested>
        </inv:number>

            <inv:symVar><xsl:value-of select="@Number"/></inv:symVar>
         <inv:dateTax><xsl:value-of select = "Date_Delivery"/></inv:dateTax>

发出声音

我将假设以下结构:

<baseNode>
    <myDate>01.Jan.2017</myDate>
</baseNode>

2017年1月1日
可以使用以下方法进行转换:

<xsl:value-of select="concat(substring(/baseNode/myDate, 8, 4), '-',  substring(/baseNode/myDate, 4, 3), '-', substring(/baseNode/myDate, 1, 2))" />

我将假设以下结构:

<baseNode>
    <myDate>01.Jan.2017</myDate>
</baseNode>

2017年1月1日
可以使用以下方法进行转换:

<xsl:value-of select="concat(substring(/baseNode/myDate, 8, 4), '-',  substring(/baseNode/myDate, 4, 3), '-', substring(/baseNode/myDate, 1, 2))" />


考虑提供一个新的解决方案。这将增加收到有用答案的概率。并获得您的XML/XSLT。这将增加收到有用答案的概率。让您的XML/XSLT格式良好。@DominikDravecký您是对的,打字错误。编辑过,现在应该很好了。@DominikDravecký你说得对,打字错误。编辑好了,现在应该好了。