我有一组数据,如下所示;
1
2
3
4
5
6
7
8
9
10
1,1
1,2
1,3
2,12
11,13,15
7,8,12
依此类推......我正在尝试使用正则表达式来定位1-7之间的某个年龄段,但我在任何包含任何这些字符的双位数字上都会得到匹配。我的正则表达式目前如下;
/^(1)|(2)|(3)|(4)|(5)|(6)|(7)|$/g
我目前的比赛包括1,2,3,4,5,6,7 - 完美。但是,它与11,13,15和7,8,12匹配 - 不是我想要的。
如何解决任何建议将不胜感激?在此先感谢,我将继续尝试纠正。
答案 0 :(得分:3)
您可以使用字词边界:
\b[1-7]\b
正如@Quantic指出的那样,这与1-7的数字相匹配,无论它们在哪里 如果你只想让行的数字在1-7之间,你需要使用锚点:
^[0-7]$
或者如果您想捕获数字:
^([0-7])$
有了这个,您需要multiline
标记,同时请参阅a demo on regex101.com。
答案 1 :(得分:2)