您的位置:首页 > 编程语言 > Java开发

js和Java分别正则匹配小数点后多余的0

2017-07-17 14:44 302 查看
var dd = "2.0010万抵10.00万";
var aa = dd.match(/\d+\.\d+/g);
for ( var index in aa) {
dd = dd.replace(aa[index],parseFloat(aa[index]));
}


Java处理方式

public class Test1 {
public static void main(String[] args) {
Float f = 1f;
System.out.println(f.toString());//1.0
System.out.println(subZeroAndDot("1"));;  // 转换后为1
System.out.println(subZeroAndDot("10"));;  // 转换后为10
System.out.println(subZeroAndDot("1.0"));;  // 转换后为1
System.out.println(subZeroAndDot("1.010"));;  // 转换后为1.01
System.out.println(subZeroAndDot("1.00001000"));;  // 转换后为1.01
}

/**
* 使用java正则表达式去掉多余的.与0
* @param s
* @return
*/
public static String subZeroAndDot(String s){
if(s.indexOf(".") > 0){
s = s.replaceAll("0+?$", "");//去掉多余的0
s = s.replaceAll("[.]$", "");//如最后一位是.则去掉
}
return s;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: