VSCode внутренний поиск по регулярному выражению с отрицательным взглядом позади - PullRequest
0 голосов
/ 24 октября 2018

В VSCode, пытаюсь найти print( и print ( - но только если за ним не следует #

Я впервые пытаюсь найти регулярное выражение в VSCode ...

Примеры:
print ('Test One') - MATCH
print( 'Test Two') - MATCH
#print('Test Fee') - SKIPPED

Я понимаю из этот вопрос о том, что у VSCode отсутствует отрицательный внешний вид.

Обычно в ^F (функция поиска) я бы использовал что-то вроде (не проверено):

/w*(?<!#)print

, но я получаюошибка в том, что регулярное выражение недопустимо.

Кто-нибудь может предложить обходной путь - или я только что проверил регулярное выражение?

1 Ответ

0 голосов
/ 24 октября 2018

Вы можете использовать

^\s*print\s*\(

См. Демонстрационную версию regex

Обратите внимание, что если вы хотите сопоставлять текст только в тех же строках, это может бытьЛучшая идея заменить \s на [ \t] или [^\S\n].

Подробности

  • ^ - начало строки
  • \s* - 0+ пробелов
  • print - буквенная подстрока
  • \s* - 0+ пробелов
  • \( - a (char (должен быть экранирован, чтобы соответствовать буквальному значению ().

NOTE , который на самом деле VSCode по-прежнему поддерживает lookaheads, но вам нужно , чтобы включить search.usePCRE2 option .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...