匹配这样的:保留小数点后一位,不四舍五入~同时允许输入1,2,222,这样的~
就是1,2,234,234.234234,1234.1234
转换成1,2,234,234.2,1234.1
替换前 > 替换
1 > 1,
2 > 2,
2.234 > 2.2 ,
234.264234 > 234.2 ,
可以说是:整数就是本身,有小数的就是保留一位,不四舍五入
(^\d+\.?\d)原先我自己写的,但是发现不能匹配1,2这个的个数~
------解决方案--------------------
- JScript code
<script> //var a=/^(([0-9])|(1[0-2])|(2[0-3])):[0-5][0-9]$/ //alert(a.test("8:30")) //var a=/^(([0-9])|(1[0-2])|(2[0-3])):[0-5][0-9]$/ //alert(a.test("0:00")) //var a=/^(([0-9])|(1[0-2])|(2[0-3])):[0-5][0-9]$/ //alert(a.test("23:59")) //var b="123.4" //var c="123.4" function mm(m){ alert(m.replace(/^((\d+?)(\.?)(\d+?))$/,function (a,b,c,d,e){ if(d=="."){ return c+"."+e.substr(0,1)}else{ return b} })) } mm("123.4545") mm("123") </script>
------解决方案--------------------
<script>
var s="1,2,234,234.264234,1234.1234";
alert(s.replace(/(\.\d)\d+/ig,"$1") )//不要四舍五入的
alert(s.replace(/\d+\.\d+/ig,a))//要四舍五入的
function a(v){
return ((v*1).toFixed(1));
}
</script>