0

この時間形式を XSLT 1.0 で hh:mm:ss にする方法を教えてください。

例 1: PT1H55M0.000S ---> 01:55:00

例 2 : PT12H0M0 ---> 12:00:00

4

1 に答える 1

1

与えられた:

<xsl:variable name="input" select="'PT1H55M0.000S'" />

以下:

<output> 
    <xsl:value-of select="format-number(substring-before(substring-after($input, 'T'), 'H'), '00')"/>   
    <xsl:value-of select="format-number(substring-before(substring-after($input, 'H'), 'M'), ':00')"/>      
    <xsl:value-of select="format-number(substring-before(substring-after($input, 'M'), 'S'), ':00')"/>

</output> 

結果は次のとおりです。

<output>01:55:00</output>

注:
これは、入力に H、M、S の 3 つの文字がすべて含まれていることを前提としています。それ以外の場合は、はるかに複雑です。

于 2014-08-05T10:31:10.493 に答える