我在这里找到了很多关于如何从结果中排除子字符串的问题,但是我想要排除完全匹配的行并且根本无法弄清楚如何去做.
根据下面的测试数据,我将如何匹配除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时.