求js正則表達式只能輸入0到15的數字!
求js正則表達式只能輸入0到15的數字!?
寶慕林4294392
2018-10-16 10:06:36
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是通過的,其他都是不通過的。
舉報