3

我想删除点之后的零或任何其他值(例如 12.000000000000)。我正在使用 xslt 代码。我的代码就像

<xsl:if test="value!= ''">
 <tr>
 <td>
 value
 </td>
 <td>
 <xsl:value-of select="value"/>
  </td>
 </tr>
 </xsl:if>

我怎样才能做到这一点?

4

3 回答 3

3
Use Number formatting as:
<xsl:if test="value!= ''">
 <tr>
  <td>
    value
  </td>
  <td>
   <xsl:value-of select="format-number(value,'0')"/>
  </td>
 </tr>
</xsl:if>
于 2013-03-22T07:40:07.163 回答
1

您可以使用格式编号功能:

<xsl:value-of select="format-number(value,'#')"/>

参考: http ://www.w3.org/TR/xslt/#format-number

于 2013-03-22T07:45:58.317 回答
0

只需使用

substring-before(concat(value, '.'), '.')

这适用于任何值——不仅仅是一个数字。即使value不包含任何点字符,结果也是正确的。

于 2013-03-22T15:04:18.000 回答