如何从正则表达式中的匹配项中排除精确字符串(而不是子字符串)?

前端之家收集整理的这篇文章主要介绍了如何从正则表达式中的匹配项中排除精确字符串(而不是子字符串)?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在这里找到了很多关于如何从结果中排除子字符串的问题,但是我想要排除完全匹配的行并且根本无法弄清楚如何去做.

根据下面的测试数据,我将如何匹配除11和111之外的所有内容

0
1
00
01
10
11
000
001
010
011
100
101
110
111
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010

我尝试了各种各样的东西,比如:

^((?!11|111).)*$

但这排除了子串匹配,再次我想要排除完全匹配.

正则表达式可以实现吗?如果是这样,如何排除完全匹配?

解决方法

您需要在未来的负面展示中包含行尾:

^(?!(11|111)$).*$

See live demo(使用您的数据)

如果不包含行尾,则只断言输入不以11或111开头,当你想要断言的是整个输入(开始到结束)不是11或111时.

猜你在找的正则表达式相关文章