Инвертировать регулярное выражение в TextMate

у меня есть эта строка:

goose goose goose random goose goose test goose goose goose

я использую регулярное выражение в TextMate, чтобы найти любое слово, которое не goose. поэтому random и test.

поэтому я попробовал следующее регулярное выражение:

[^sgooses]

но это не совсем то, что я хочу. Он соответствует любому символу, который не является space и буквы g o s e.

как я могу найти регулярное выражение, чтобы соответствовать любому целому слову, которое не является goose? Поэтому должно быть 2 матча random и test.

12
задан luciano
07.01.2023 6:33 Количество просмотров материала 3242
Распечатать страницу

1 ответ

не уверен, что он будет работать с TextMate (у меня его нет, но я тестировал с Notepad++).

вы можете попробовать:

\b(?:(?!goose)\w)+\b

объяснение:

\b          : word boundary
(?:         : start non capture group
  (?!goose) : negative lookahead, make sure we don't have the word "goose"
  \w        : a word character, you may use "[a-zA-Z]" for letters only or "." for any character but newline
)+          : group may appears 1 or more times
\b          : word boundary
3
отвечен Toto 2023-01-08 14:21

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх