在XSLT 1.0中格式化字符串

时间:2014-10-21 07:48:56

标签: xml xslt xslt-1.0

我有一个字符串FI234567。我想把它格式化为23456-7。

我必须使用XSL 1.0来做到这一点。 我试图用函数substring,translate&收到输出为234567。 现在我需要输出为23456-7 任何建议!

2 个答案:

答案 0 :(得分:1)

我这样做了它并且它起作用了。

<xsl:variable name="FormatCode_First">
    <xsl:value-of select="substring(InputString,1,string-length(InputString)-1)"/>
</xsl:variable>
<xsl:variable name="FormatCode_Second">
    <xsl:value-of select="substring(InputString,string-length(InputString))"/>
</xsl:variable>
<xsl:value-of select="normalize-space($FormatCode_First)"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="normalize-space($FormatCode_Second)"/>

答案 1 :(得分:0)

选中此项以查找FF1234:

等文字
<xsl:template match="text1">
    <xsl:variable name="var1" select="replace(., '([A-z]+)([0-9]+)', '$2', 'i')"/>
    <xsl:variable name="var2" select="substring($var1, 1, string-length($var1)-1)"/>
    <xsl:variable name="var3" select="substring($var1, string-length($var1))"/>
    <xsl:value-of select="concat($var2, '-', $var3)"/>
</xsl:template>