-2

我需要将字段的值设置为“12345678”(8 位数字)或“12345678.1234”(8 位有效数字和小数点后 4 位数字)之类的值。这些数字在用户实际输入时进行检查。这取决于用户输入的内容。但他不能超过限制

我尝试了格式数字功能,但它不起作用。PS:我的雇主不让我在这里复制粘贴代码。

任何帮助都感激不尽。谢谢,阿希克侯赛因。

4

2 回答 2

1

这种转变

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output omit-xml-declaration="yes" indent="yes"/>

 <xsl:template match="x">
  <xsl:variable name="vIntPart" select="floor(.)"/>
  <xsl:variable name="vFractPart" select=". - $vIntPart"/>

  <xsl:value-of select="concat(substring($vIntPart, 1,8),
                               '.',
                               substring($vFractPart*10000, 1,4)
                               )"/>
 </xsl:template>
</xsl:stylesheet>

应用于以下 XML 文档时:

<t>
 <x>1234567890.9876543</x>
 <x>1234567890</x>
 <x>.9876543</x>
</t>

产生想要的正确结果:

 12345678.9876
 12345678.0
 0.9876
于 2013-03-10T18:07:35.920 回答
1

所以你想截断小数点前超过 8 位或小数点后超过 4 位的任何内容?这个怎么样?

format-number(. mod 100000000, '#.####') 
于 2013-03-10T14:56:18.710 回答