点后删除值

时间:2013-03-22 07:20:03

标签: xslt

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

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

我怎么能做到这一点?

3 个答案:

答案 0 :(得分: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>

答案 1 :(得分:1)

您可以使用format-number函数:

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

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

祝你好运, 彼得

答案 2 :(得分:0)

只需使用

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

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