number 函数 (XPath)
将参数转换为数字。
number number(object?)
备注
如下所述将参数转换为数字。
由可选的空白依次后接可选的减号、数字、空白组成的字符串转换为与该字符串表示的算数值最接近的 IEEE 754 数字(根据 IEEE 754 舍入到最接近值的规则);任何其他字符串将转换为 NaN。
布尔值 true 转换为 1;布尔值 false 转换为 0。
节点集先转换为字符串,然后再通过相同的方式转换为字符串参数。
不属于四种基本类型(节点集、布尔值、数字或字符串)的对象通过该类型相应的方式转换为数字。
如果省略了该参数,默认的节点集中唯一的成员是上下文节点。
备注
number() 函数不应用于转换 XML 文档的元素中出现的数字数据,除非该元素的类型使用与语言无关的格式表示数字数据(通常转换为特定语言的格式,以便为某个用户显示)。此外,除非元素所使用的与语言无关的格式与 XML 路径语言 (XPath) 的数字语法一致,否则,不能使用 number() 函数。
示例
XML 文件
无;XSLT 文件调用自身。
XSLT 文件 (number.xsl)
<?xml version='1.0'?>
<?xml-stylesheet type="text/xsl" href="number.xsl"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<body>
<h3>number() Function</h3>
<ul>
<li>
<b>number('2048')</b>
=
<xsl:value-of select="number('2048')"/>
</li>
<li>
<b>number('-2048')</b>
=
<xsl:value-of select="number('-2048')"/>
</li>
<li>
<b>number('text')</b>
=
<xsl:value-of select="number('text')"/>
</li>
<li>
<b>number('109.54' div '1')</b>
=
<xsl:value-of select="number('109.54' div '1')"/>
</li>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
格式化输出
number() Function
number('2048') = 2048
number('-2048') = -2048
number('text') = NaN
number('109.54') = 109.54
处理器输出
<html>
<body>
<h3>number() Function</h3>
<ul>
<li><b>number('2048')</b>
=
2048</li>
<li><b>number('-2048')</b>
=
-2048</li>
<li><b>number('text')</b>
=
NaN</li>
<li><b>number('109.54' div '1')</b>
=
109.54</li>
</ul>
</body>
</html>