Используйте регулярное выражение в XCode, чтобы исключить фразу из результатов поиска - PullRequest
1 голос
/ 06 сентября 2011

Мне нужно найти в файлах проекта все вхождения <LIB> или <M>, но только если нет <TOLERATED>.

например. найти все это:

// <M> a bit of code
// <LIB> rename with prefix

Но не показывайте это:

// <M><TOLERATED> a bit of code
// <TOLERATED><LIB> rename with prefix

Мои попытки: Это дает вам результаты с <LIB> и <TOLERATED>: <LIB>(.*?)TOL Затем я попытался отрицать <TOLERATED> с помощью: <LIB>(.*?)(?!TOL), но это возвращает меня к строчкам с <LIB> и <TOLERATED>

Я пробовал много других способов исключить <TOLERATED> из результатов поиска, но ни один из них не работал:

<LIB>(?!TOL\b)\b\w+
<LIB>(.*?)(?!TOL\b)\b\w+
<LIB>(.*?)(?<!TOLERATED)
<LIB>(.*?)+\b(?<!\bTOLERATED)

и многие другие.

На что я смотрел: RegExp в Xcode: исключить совпадения из набора результатов?

Спасибо за вашу помощь --Josef

1 Ответ

2 голосов
/ 06 сентября 2011
^(?!.*?<TOLERATED>).*?<(?:LIB|M)>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...