xslt 1.0 中是否有更优雅的解决方案?我知道 xslt 2.0 有内置函数。
我以十进制小时数取一个数字,需要将其表示为 HH:MM:SS。目前我有以下功能很好。
<xsl:variable name="decimal_hours" select="pre_lab_cost div pre_labour_rate"/>
<xsl:variable name="decimal_minutes" select="number(concat('0.',substring-after($decimal_hours, '.')))*60"/>
<xsl:variable name="decimal_seconds" select="number(concat('0.',substring-after($decimal_minutes, '.')))*60"/>
<xsl:value-of select="concat(format-number(floor($decimal_hours), '00'),
':',
format-number(floor($decimal_minutes), '00'),
':',
format-number(floor($decimal_seconds), '00')
)"/>