2016-09-29 1 views

ответ

1

Предположим, что у вас есть значение «PT11H22M» в виде строки:

<xsl:variable name="s" as="xs:string" select="'PT11H22M'"/> 

Если предположить, что длительность всегда меньше, чем за 24 часов, вы можете преобразовать строку «PT11 H22M»на период с использованием

<xsl:variable name="d" as="xs"dayTimeDuration" 
       select="xs:dayTimeDuration($s)"/> 

Вы можете преобразовать это в день время-использования

<xsl:variable name="t" as="xs:time" select="xs:time('00:00:00') + $d"/> 

И тогда вы можете отформатировать это как строку„11.22“, используя

<xsl:variable name="out" as="xs:string" 
       select="format-time($t, '[H01].[m01]')"/> 

В качестве альтернативы вы можете выделить компоненты часов и минут с использованием fn:hours-from-duration и fn:minutes-from-duration, а затем отформатировать их как цифры с помощью fn:format-number.