我正在尝试匹配正则表达式中包含以下其中一项的一组数字:
1,2,3,4,5,6,7,8,9,10,11
但我无法弄清楚正则表达式。
对于单个数字,这种模式工作正常“0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9”,但它在两位数字上失败。例如,由于正则表达式在12中找到1,因此12次传递正常。
答案 0 :(得分:2)
您可以使用开始和结束锚点来强制匹配整个字符串:
^(0|1|2|3|4|5|6|7|8|9|10|11)$
可以缩短为:
^(\d|10|11)$
答案 1 :(得分:1)
如果您想检查一个号码是否在 0和11 之间,这将有效。
^[0-9]$|^1?[0-1]$
如果你想匹配一个字符串,如:
1,2,3,12,32,5,1,6,8, 11
并匹配0-11然后您可以使用以下内容:
(?<=,|^)([0-9]|1?[0-1])(?=,|$)
答案 2 :(得分:0)
使用此正则表达式^(0|1|2|3|4|5|6|7|8|9|(10)|(11))$