XSLT的新手,请原谅我的问题。
因此,我必须从应用程序中导出数据,现在为此,我编写了XML代码,并且在导出某些字段的同时需要格式化我正在使用XSLT的格式。现在,此处的问题在我的SQL Server数据库中,我有一个联系码字段,其中一些数字以1234567890的格式为1234567890,而有些则具有空格123 4567890。因此,现在当我使用以下提到的XSLT代码时,所有内容均为如果该字段有空间,但在没有空格时会弄乱。我知道我可以直接在数据库中进行更改,但这不是永久解决方案。如果有人能提供一些指导,那将是很棒的。预先感谢。
<xsl:value-of select="concat('(',substring(D_PHONE,1,3),') ',substring(D_PHONE,4,3),'-',substring(D_PHONE,7,4))" />
假设您想要:
的结果(123) 456-7890
您可以做:
<xsl:variable name="phone" select="translate(D_PHONE, ' ', '')" />
<xsl:value-of select="concat('(', substring($phone, 1, 3), ') ', substring($phone, 4, 3), '-', substring($phone, 7, 4))" />
或(更清楚一点(:
<xsl:variable name="phone" select="translate(D_PHONE, ' ', '')" />
<xsl:text>(</xsl:text>
<xsl:value-of select="substring($phone, 1, 3)" />
<xsl:text>) </xsl:text>
<xsl:value-of select="substring($phone, 4, 3)" />
<xsl:text>-</xsl:text>
<xsl:value-of select="substring($phone, 7, 4)" />