System.out.println(new BigDecimal("11.0").stripTrailingZeros());
package com.ricky.www;
public class Test {
public static void main(String[] args) {
/**
* (?:(\\.\\d*[^0])|\\.)中做出选择,当符合其中的第二种情况的时候
* 由于下面依然用$2来替换,而$2代表的是\\.\\d*[^0]为空,所以没有获得
* 那个点,也就是出现的只是整数的情况
*/
String regex = "(\\d+)(?:(\\.\\d*[^0])|\\.)0*";
String data1 = "11.0";
String data2 = "11.";
String data3 = "123.0012200";
String afterFormat = data1.replaceAll(regex, "$1$2");
System.out.println(afterFormat);
}
}
<script type="text/javascript">
var data1 = "11.00146400";
var data2 = "11.000";
var data3 = "11.";
var regex = /^(\d+)(?:(\.\d*[^0])|\.)0*$/;
window.alert(data1.replace(regex, "$1$2"));
window.alert(data2.replace(regex, "$1$2"));
window.alert(data3.replace(regex, "$1$2"));
</script>