读书人

求限定输入21-20000的正则表达式,该怎

发布时间: 2012-02-14 19:19:19 作者: rapoo

求限定输入21-20000的正则表达式
如题。。。

[解决办法]
function Num(input) {
return /^([3-9]\d|[2][1-9]|\d{3,4}|[1]\d{4})$/.test(input);
}
[解决办法]
<script type= "text/javascript ">
var p = /^(?:2[1-9]|(?:1\d\d\d|[1-9]\d\d|[1-9]\d|[3-9])\d|20000)$/;
for (var i = 20 ; i < 20002 ; i ++) if (!p.test(i)) document.write(i, " <br \/> ");
</script>
这么简单的东西。为什么非要用正则呢?
[解决办法]
<html>
<head>
<script language=javascript>
function a(){
var t=document.getElementById( "t ").value;
alert(t);
var reg=/^((2[1-9])|([3-9]\d)|([1-9]\d{2,3})|(1\d{4})|(20000))$/;

var result=reg.test(t);
alert(result);
}
</script>
</head>
<body >
<input type= "text " id= "t "> <button onclick= "a(); "> check </button>
</body>
</html>
[解决办法]
不知道这功能为什么要用正则

哈,写了一个,本以为能简化一下,结果还是没简化多少,失败

/^(?!(?:1\d|20)$)(?:1\d{4}|[1-9]\d{1,3}|20000)$/

读书人网 >JavaScript

热点推荐