Если вы ищете все строки, которые не имеют 011
в качестве подстроки, а не просто исключают строку 011
:
Классическое регулярное выражение для этого будет:
1*(0+01)*
Как правило, в начале вы можете иметь столько единиц, сколько захотите, но как только вы достигнете нуля, за ним последуют либо нули, либо нули (так как в противном случае вы получите ноль один один) .
Современное, не совсем регулярное регулярное выражение будет:
^((?!011)[01])*$
Если, однако, вам нужна любая строка, отличная от 011
, вы можете просто перечислить короткую строку и подстановить остальные символы:
λ+0+1+00+01+10+11+(1+00+010)(0+1)*
А в современном регулярном выражении:
^(?!011)[01]*$