Пример 2. Исключить ОШИБКУ при поиске er*
.В этом случае также могут быть специальные решения.
Только к вашему сведению, er*
не будет соответствовать ERROR
.Это будет соответствовать любому из них:
e
er
errrrr
errrrrrrrrrrrrrrrrr
ВыВозможно, вы думаете о ER.*
Переходя от этого ...
Вы в основном ищете квантификатор \@!
.Он утверждает, что предыдущий атом не совпадает в текущей позиции.Это также нулевая ширина.Если вы хотите найти ER.*
, но не совпадать с ERROR
, вы можете сделать это:
ER\(ROR\)\@!.*
Или, как я предпочитаю, с "магией" на (\v
):
\vER(ROR)@!.*
Или с вашим первым примером:
\vHow\sa@![a-z]
Даже если бы я рекомендовал использовать [b-z]
, как указал Джонатон:)