xslt的新手。寻找xslt1.0来将客户在小时和分钟内输入的时间转换为这种格式的PT_H_M
<cre:timeTotal>1</cre:timeTotal> to <cre:timeTotal>PT1H</cre:timeTotal>
<cre:timeTotal>6.5</cre:timeTotal> to <cre:timeTotal>PT6H30M</cre:timeTotal>
<cre:timeTotal>6.5</cre:timeTotal> to <cre:timeTotal>PT30M</cre:timeTotal>提前感谢
发布于 2022-06-23 22:37:22
试一试如下:
<xsl:template match="cre:timeTotal">
<xsl:variable name="h" select="floor(.)" />
<xsl:variable name="m" select="60 * (. - $h)" />
<xsl:copy>
<xsl:text>PT</xsl:text>
<xsl:if test="$h">
<xsl:value-of select="$h"/>
<xsl:text>H</xsl:text>
</xsl:if>
<xsl:if test="$m">
<xsl:value-of select="$m"/>
<xsl:text>M</xsl:text>
</xsl:if>
</xsl:copy>
</xsl:template>如果您的处理器碰巧支持EXSLT 日期:期限()扩展函数,您可以简单地:
<xsl:value-of select="date:duration(3600 * .)"/>https://stackoverflow.com/questions/72737172
复制相似问题