基本上我想匹配以下内容:
const regex = /(?=.*[0-1])(?=.*[^0{2}])|(0[1-9]|1[012])$/
console.log('0, should be True: ', regex.test('0'))
console.log('1, should be True: ', regex.test('1'))
console.log('00, should be False: ', regex.test('00'))
console.log('01, should be True: ', regex.test('01'))
console.log('12, should be True: ', regex.test('12'))
console.log('99, should be False: ', regex.test('99'))
有效:0, 1, 01-09, 10-12
无效:00, >12
任何人都知道怎么做?
答案 0 :(得分:1)
这样做:
const regex = /^([01]|0[1-9]|1[012])$/;
即:
测试输出:
0, should be True: true 1, should be True: true 00, should be False: false 01, should be True: true 12, should be True: true 99, should be False: false
答案 1 :(得分:0)
这样做:
/^0[1-9]|[0-9]|1[0-2]$/
答案 2 :(得分:0)
你可以这样做。
var regex = /^\d?$|^0[1-9]?$|^1(=?[0-2])$/;
或:
var regex = /^\d?$|^0[1-9]?$|^1[0-2]$/;
或:
var regex = /^(\d?|^0[1-9]?|^1[0-2])$/;
有很多可能的方法可以达到相同的效果。