首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

正则,只允许输入小数点后3个小数解决思路

2012-03-21 
正则,只允许输入小数点后3个小数functionisFloat(str){if(str )returnfalsevarreg/^\-?([1-9]\d*|0

正则,只允许输入小数点后3个小数
function   isFloat(str){
if(str== " ")
return   false;
var   reg=/^\-?([1-9]\d*|0)(\.\d?[0-9])?$/;
return   reg.test(str);
}
这是俺当初网上抄的,是限制小数点后两个小数,今天需求改成3个小数,我不懂正则,学习中。。。各位帮忙改下啊。。。

[解决办法]
那个正则表达式有点问题,你输入1.他能通过.而且写得有点乱
试试这个^\-?\d+(\.\d{1,3})?$,应该可以的
[解决办法]
还是不严格..~当非小数位只有1位的时候应该可以为0.所以应该是:
/^-?(\d|[1-9]\d+)(\.\d{0,2}[1-9])?$/

[解决办法]
/^(?:\+|-)?\d+(?:\.\d{1,3})?$/

ok?
[解决办法]
function isFloat(str){
if(str== " ")
return false;
var reg=/^\-?([1-9]\d*|0)(\.[1-9]{1,3})?$/;
return reg.test(str);
}
alert(isFloat( "123.152 "));//true

热点排行