跪求 js正则表达式 小于等于0大于等于1000 并且保留两位小数

js正则表达式 小于等于0大于等于1000 并且保留两位小数

var reg=/^\d.([1-9]{1,2}|[0-9][1-9])$|^[1-9]\d{0,1}(.\d{1,2}){0,1}$|^100(.0{1,2}){0,1}$/

  var r = /^([0-9]{1,3}(\.\d{2})?|1000(\.[0]{2})?)$/

这就叫没事找事儿做了。好好的一个 if(x<=0||x>=1000) 判断,非要那么复杂作甚?保留两位就x.toFixed(2);

(-([0-9]*(.[0-9]{1,2})?)|[1-9][0-9]{3,}(.[0-9]{1,2})?)

var reg = r'^0.0*$|^-\d+.?\d*|^[1-9]\d{3,}.?\d*$' ; 我的使用python写的,但是规则都是一样的

(值>0&&值《100)

var reg = r'^0.?0*$|^-\d+.?\d*|^[1-9]\d{3,}.?\d*$' ; 上面的少匹配0了,这次都可以匹配, 第一部分匹配0或0.00... ,第二部分匹配小于0的所有数,第三部分匹配大于1000的所有数

/(-([0-9]*(.[0-9]{1,2})?)|[1-9][0-9]{3,}(.[0-9]{1,2})?)|0/

var reg= /^([0-9]{1,3}(.\d{2})?|1000(.[0]{2})?)$/

试试这样吧,,换个思路。

 var inputVal = 10001.0002;
            var temp = inputVal + "";
            if ((inputVal<=0||inputVal>1000)
                    && temp.substring(temp.indexOf(".") + 1).length == 2) {
                alert("输入格式正确!");
            } else if (temp.indexOf(".") < 0) {
                alert("输入的值为整数!");
            } else {
                alert("格式不正确。");
            }

function c(p){
return String(p-1).toString().match(new RegExp(/[\d]{1,3}.[\d]{2}/),'g')?true:false
}

具体需求是大于0,小于等于100,并且最多保留两位小数。

比如 :0.1,0.01,100.00,100.0, 10.01可以通过。

    0.0,0.00,100.01,0.111,11.111不能通过

var reg=/^\d.([1-9]{1,2}|[0-9][1-9])$|^[1-9]\d{0,1}(.\d{1,2}){0,1}$|^100(.0{1,2}){0,1}$/

^(0(?!.0{1,2}$)(.[0-9]{1,2})?|[1-9][0-9]{0,2}(.[0-9]{1,2})?)$

var reg= /^([0-9]{0,3}(.\d{2})?|1000(.[0]{2})?)$/

function c(p){
return String(p-1).toString().match(new RegExp(/[\d]{1,3}.[\d]{2}/),'g')?true:false
}

然后调用c(参数),就可以知道 是否合法输入了。

var reg = ^(?:0.\d{1,2}|[1-9]\d{0,2}(?:.\d{1,2})?|1000)$;