XSLT中的SSN格式?

时间:2008-11-04 20:43:49

标签: xslt

我可以使用一些帮助创建一个XSL模板,该模板将采用一串数字(即123456789)并将该字符串格式化为社会安全号码格式(即123-45-6789)。我在互联网上找到one example,但它似乎过于复杂。

我是XSLT的新手,所以在回复时请记住这一点。谢谢!

1 个答案:

答案 0 :(得分:4)

XSLT 1.0的字符串函数有点受限,但幸运的是这并不太难:

假设< ssn> 123456789< / SSN>:

<xsl:template match="ssn">    
    <xsl:value-of select="substring(., 0, 4)"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="substring(., 4, 2)"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="substring(., 6, 4)"/>    
</xsl:template>

在XSLT 2.0中,concat()可以使用两个以上的参数,所以它只是一行:

  <xsl:template match="ssn">
        <xsl:value-of select="concat(substring(., 0, 4), '-', substring(., 4, 2), '-', substring(., 6, 4))" />    
   </xsl:template>