为了账号安全,请及时绑定邮箱和手机立即绑定

求js正则表达式只能输入0到15的数字!?

求js正则表达式只能输入0到15的数字!?

宝慕林4294392 2018-10-16 10:06:36
求js正则表达式只能输入0到15的数字!
查看完整描述

1 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

正确的写法应该是
var p = /^([0-9]|(1[0-5]))$/;
里面有几个要点,
1、[0-9]|(1[0-5]) 这里是指明,要么是0-9的单个数字,要么是1开头并且后跟0-5的数字
2、^ 和 $ 夹在前后指明必须完全匹配

为了证明这个正则表达式是正确的,你可以试试在 Chrome 浏览器的控制台里执行下面的小测试程序:
var p = /^([0-9]|(1[0-5]))$/;
for (var i = -1; i < 20; ++i) {
console.log(i + ' ' + p.test(i));
}

输出为:
1 false
0 true
1 true
2 true
3 true
4 true
5 true
6 true
7 true
8 true
9 true
10 true
11 true
12 true
13 true
14 true
15 true
16 false
17 false
18 false
19 false

看到了吧,只有0到15是通过的,其他都是不通过的。



查看完整回答
反对 回复 2018-11-02
  • 1 回答
  • 0 关注
  • 1235 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信