Мне нужна рекурсивная функция для ниже XML - PullRequest
0 голосов
/ 11 мая 2019
<Root><TID>E</TID><EID>1234</EID><Name>suresh</Name><OID>12</OID></Root>

Мне нужен XSLT для вышеуказанного XML. Советы: выход фиксированной длины:

  • TID (1)
  • EID (2-10)
  • Наполнитель (11-13)
  • Имя (14-20)
  • OID (21-24)

Вывод будет:

E000001234   Suresh 0012

Номер должен быть заполнен 0000, строка слева должна содержать пробелы - заполнитель также пробел

Кто-нибудь, не могли бы вы помочь мне в этом

1 Ответ

1 голос
/ 11 мая 2019

Я бы сделал просто:

<xsl:template match="/Root">
    <xsl:value-of select="TID"/>
    <xsl:value-of select="format-number(EID, '000000000')"/>
    <xsl:text>   </xsl:text>
    <xsl:value-of select="substring(concat(Name, '       '), 1, 7)"/>
    <xsl:value-of select="format-number(OID, '0000')"/>
</xsl:template>
...