Как исправить: fatal: Неверная обратная ссылка - PullRequest
0 голосов
/ 24 мая 2018

Я пытаюсь найти появления трех повторяющихся символов, кроме точки или тире, в git-репо.Может кто-нибудь объяснить, почему это не работает:

$ git grep -n "([^.-])\1{2}"
fatal: command line, '([^.-])\1{2}': Invalid back reference

Почему \1 не является действительной обратной ссылкой на первую группу захвата?

1 Ответ

0 голосов
/ 24 мая 2018

Чтобы создать группу захвата, вам нужно поставить обратную косую черту в скобках.Вам также нужно поставить косые скобки в обратную скобку, чтобы превратить их в квантификатор:

git grep -n "\([^.-]\)\1\{2\}"

Или использовать расширенные или Perl-совместимые регулярные выражения:

git grep -nE "([^.-])\1{2}"
git grep -nP "([^.-])\1{2}"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...