TCL 如何只输出小数点后面的有效数字? @ 主贴
日期:2009-06-21 14:30:58 作者:
提问
例如,
1.230 输出为 1.23
8.000 输出为 8.0
关键是考虑到小数点后第一位是0的情况和正则表达式中的非贪婪匹配。
解决办法如下:
set num 1.2900 regsub {(\.\d+?)0*$} $num {\1} ## 输出 1.29 set num 1.00 regsub {(\.\d+?)0*$} $num {\1} ## 输出 1.0
注意上面的非贪婪匹配 "\d+?"。如果是采用贪婪匹配,则如下
set num 1.2900 regsub {(\.\d+)0*$} $num {\1} ## 输出 1