format-number,函式用于把字元串转换为数字的一种程式。
基本介绍
- 中文名数字格式函式
- 外文名format-number()
- 用途把字元串转化为数字
正文
定义和用法
format-number() 函式用于把字元串转换为数字。
语法
FormatNumber(
expression [,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]]
)
Arguments
Expression
必选项。要被格式化的表达式。
NumDigitsAfterDecimal
可选项。指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设定。
IncludeLeadingDigit
可选项。三态常数,指示是否显示小数值小数点前面的零。有关数值,请参阅“设定”部分。
UseParensForNegativeNumbers
可选项。三态常数,指示是否将负值置于括弧中。有关数值,请参阅“设定”部分。
GroupDigits
可选项。三态常数,指示是否使用计算机区域设定中指定的数字分组符号将数字分组。有关数值,请参阅“设定”部分。
设定
IncludeLeadingDigit、UseParensForNegativeNumbers 和 GroupDigits 参数可以有以下值
常数 值 描述
TristateTrue -1 True
TristateFalse 0 False
TristateUseDefault -2 使用计算机区域设定中的设定。
说明
当省略一个或多个可选项参数时,由计算机区域设定提供被省略参数的值。
注意 所有设定信息均取自区域设定的“数字”附签。
下面例子利用 FormatNumber 函式把数值格式化为带四位小数点的数:
Function FormatNumberDemo
Dim MyAngle, MySecant, MyNumber
MyAngle = 1.3 ' 用弧度定义角。
MySecant = 1 / Cos(MyAngle) ' 计算正割值。
FormatNumberDemo = FormatNumber(MySecant,4) ' 把 MySecant 格式化为带四位小数点的数。
VBScript有两个用于格式化数字的负数。用函式Formatnumber(),你可以指定小数点后的显示位数,是否显示前导的零,显示负数时是否使用空格,和是否使用分隔设定等。下面是一些例子及其返回值
<%=Formatnumber(6665.8999)%>
6,665.90
<%=Formatnumber(“6665.8999”)%>
6,665.90
<%=Formatnumber(6665.8999,3)%>
6,665.900
<%=Formatnumber(-6665.8999,3,-1,-1,0)%>
(6665.900)
注意第二个例子用了一个字元串,二不是数字。当一个字元串可以被解释为一个数字时,你可以用该字元串作为函式Formatnumber()的参数。如果该字元串不能被解释为数字,则会返回错误。
一个例子用到了函式Formatnumber()的所有参数
第一个参数(-6665.8999)指定了要进行格式化的数字。
第二个参数(3)指定了小数点后显示的位数。
第三个参数(-1)指定了是否显示前导的零。
第四个参数(-1)指定是否对负数使用括弧。
一个参数(0)指定是否显示分隔设定。
注意
许多VBScript函式使用三态常量。函式Formatnumber()的第三,第四,第五个参数可以接受三态常量或它们的值。下面列出了三态常量
TristateTrue -1 True
TristateFalse 0 False
TristateUseDefault -2 使用区域设定
你也可以指定这些格式的某个特定属性依赖于Windows控制台中的区域设定。
如果你需要格式化百分数,应使用函式Formatpercent()
<%=Formatpercent(12)%>
1,200.00%
<%=Formatpercent(“12”)%>
1,200.00%
这个函式把它的第一个参数乘以100,并在结果后面追加一个百分号。函式Formatpercent()也可以接受许多附加参数,以改变输出格式。
例子
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <xsl:value-of select='format-number(500100, "#.00")' /> <br /> <xsl:value-of select='format-number(500100, "#.0")' /> <br /> <xsl:value-of select='format-number(500100, "###,###.00")' /> <br /> <xsl:value-of select='format-number(0.23456, "##%")' /> <br /> <xsl:value-of select='format-number(500100, "#######")' /> </body> </html> </xsl:template> </xsl:stylesheet>