這個樣式表:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:strip-space elements="*"/>
<xsl:template match="LogFormat">
<xsl:apply-templates select="TestHeading[1]"/>
</xsl:template>
<xsl:template match="TestHeading">
<xsl:param name="pSum" select="0"/>
<xsl:variable name="vNext"
select="following-sibling::TestHeading[1]"/>
<xsl:variable name="vSum"
select="$pSum + substring(TestDuration,1,2) * 3600
+ substring(TestDuration,4,2) * 60
+ substring(TestDuration,7)"/>
<xsl:apply-templates select="vNext">
<xsl:with-param name="pSum" select="$vSum"/>
</xsl:apply-templates>
<xsl:if test="not(vNext)">
<xsl:value-of
select="concat(format-number(floor($vSum div 3600),'00'),
':',
format-number(floor($vSum mod 3600 div 60),'00'),
':',
format-number($vSum mod 60,'00'))"/>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
輸出:
00:09:20
這是XSLT 1.0或2.0? 2.0具有廣泛的日期/時間算術功能,而1.0沒有 - 儘管您可以查看www.exslt.org上提供的擴展。 – 2011-04-15 11:00:51