Поиск начала / конца слова с помощью ripgrep
С grep
Я могу искать начало и конец слова с
grep -e '\<leg\>' <where to search>
это найдет I have a leg.
но нет play allegro here
,
Ripgrep (0.10.0) не поддерживает такой способ написания этого регулярного выражения. Мой вопрос таким образом:
Как "grep" для вхождений в начале / конце слова с ripgrep
?
1 ответ
Решение
ripgrep не поддерживает \<
а также \>
границы слова, которые соответствуют только началу и концу слова соответственно. ripgrep поддерживает \b
, который соответствует границе слова в любом месте. В этом случае этого достаточно для вашего конкретного примера:
$ echo 'play allegro here' | rg '\bleg\b'
$ echo 'I have a leg.' | rg '\bleg\b'
I have a leg.
ripgrep также поддерживает grep -w
флаг, который фактически делает то же самое в этом случае:
$ echo 'play allegro here' | rg -w leg
$ echo 'I have a leg.' | rg -w leg
I have a leg.