gpt4 book ai didi

xslt - 使用format-number()函数显示银行帐号

转载 作者:行者123 更新时间:2023-12-03 17:15:38 25 4
gpt4 key购买 nike

我有一个银行帐号示例:

06101010100075911391740027


我想显示如下:

06 1010 1010 0075 9113 9174 0027


我尝试了以下代码:

<xsl:decimal-format name="european" decimal-separator="." grouping-separator="&#160;"/>
<xsl:value-of select="format-number(06101010100075911391740027,'##&#160;####&#160;####&#160;####&#160;####&#160;####&#160;0000','european')"/>


但是结果远非预期:


6 1010 1010 0075 9110 0000 0000


我该如何解决?

最佳答案

为了拥有前导零,您将需要使用0数字符号而不是#:

<xsl:value-of select="format-number(06101010100075911391740027,
'00&#160;0000&#160;0000&#160;0000&#160;0000&#160;0000&#160;0000','european')"/>


但是,由于浮点舍入,最终仍会导致字符串9为零。您是否实际上已将此数字作为XSLT中的数字传递,或者它是字符串值?如果它是字符串值,则可以只使用concat()和substring():

<xsl:variable name="an" select="'06101010100075911391740027'" />
<xsl:value-of select="concat(substring($an, 1, 2), '&#160;',
substring($an, 3, 4), '&#160;',
substring($an, 7, 4), '&#160;',
substring($an, 11, 4), '&#160;',
substring($an, 15, 4), '&#160;',
substring($an, 19, 4), '&#160;',
substring($an, 23, 4))" />


如果确实将其作为数字数据类型进行处理,我认为您唯一的选择可能是更改将其作为字符串处理的方法。

关于xslt - 使用format-number()函数显示银行帐号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18870068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com