|
|
有人提到说想匹配3位数,结果有搜索到了4位数,那说明正则写的不够严谨
比如这样写
\s1[6-9][0-9]
因为没有对第三个数字之后做出限制
那么会导致 "~a/b/o 1600 chaos","~a/b/o 18000 chaos" 也会匹配成功,数字的前三位160和180是符合匹配的
要这样写
\s1[6-9][0-9]\s
那么"~a/b/o 1600 chaos","~a/b/o 18000 chaos" 因为160和180后面不是空白,是0,不符合匹配
或者
\s1[6-9]\d.c
"~a/b/o 1600 chaos","~a/b/o 18000 chaos" 160和180后面的0虽然匹配上了句号 "." , 但是 句号 "." 后面是空格或者0,并不是c,所以不符合匹配
这样就不会匹配出错了
根本不好使
1[1-9].c 1[1-9]\s 一样的会匹配3位数出来 |
|