我需要一个正则表达式来验证大于0且小于1999的数字。
我尝试了以下代码,但它需要LiveValidation和大量代码。
var f8 = new LiveValidation('f8');
f8.add( Validate.Numericality, { minimum: 0, maximum: 1999} );
由于
答案 0 :(得分:6)
你有没有试过这样的事情:
^[0-1]?[0-9]{0,3}$
答案 1 :(得分:2)
怎么样
([1-9][0-9]{0,2}|1[0-8][0-9]{2}|19[0-8][0-9]|199[0-8])
答案 2 :(得分:1)
通过寻找将数字与正则表达式进行比较的答案,只要想想你浪费了多少时间。但我认为作为程序员,您知道><
符号在每种语言中都可以比较数字。我建议你使用它们。
function is_valid(strNum){
var num = parseInt(strNum);
return (num>0 && num<1999);
}
此代码将满足您的需求,甚至不会浪费时间
答案 3 :(得分:1)
查看此模式:
^([0-9]{0,3}|1\d[0-8][9]|1\d{2}[0-8])$
它允许介于1和1998之间的值,包括在内。
答案 4 :(得分:0)
我不会用正则表达式执行此操作,但请尝试:
/^(?![2-9].{3})\d{1,4}$/
再次,这在不必要的中,但你明白了。