38

我想将 xslt 中的字符串值转换为整数值。我使用的是 xslt 1.0,所以我不能使用 xslt 2.0 中支持的那些功能。请帮忙。

4

2 回答 2

64

添加到 jelovirt 的答案中,您可以使用 number() 将值转换为数字,然后使用 round()、 floor() 或 ceiling() 来获得一个整数。

例子

<xsl:variable name="MyValAsText" select="'5.14'"/>
<xsl:value-of select="number($MyValAsText) * 2"/> <!-- This outputs 10.28 -->
<xsl:value-of select="floor($MyValAsText)"/> <!-- outputs 5 -->
<xsl:value-of select="ceiling($MyValAsText)"/> <!-- outputs 6 -->
<xsl:value-of select="round($MyValAsText)"/> <!-- outputs 5 -->
于 2011-01-25T17:02:55.190 回答
33

XSLT 1.0 没有整数数据类型,只有双精度数据类型。您可以使用number()将字符串转换为数字。

于 2009-08-13T06:01:34.263 回答