grep -G
поддерживает базовые регулярные выражения, grep -E
расширенный
one и grep -P
Perl.
Есть ли в findutils "синтаксис регулярного выражения grep" раздела 8.5.6
руководство
https://www.gnu.org/software/findutils/manual/html_mono/find.html#grep-regular-expression-syntax
обратитесь к синтаксису grep
для базовых регулярных выражений или расширенных
Регулярные выражения?
Обратите внимание, что в руководстве по findutils есть другой раздел для 8.5.3. Синтаксис регулярного выражения egrep https://www.gnu.org/software/findutils/manual/html_mono/find.html#egrep-regular-expression-syntax . Означает ли это, что ответ на мой вопрос касается BRE?
Спасибо.
Означает ли это, что ответ на мой вопрос касается BRE?
Да. grep
должен быть эквивалентен grep -G
, а egrep
должен быть эквивалентен grep -E
. По умолчанию используется синтаксис elisp
. Полный набор функций см. В исходном коде .
Есть ли в руководстве по findutils описания различных синтаксисов регулярных выражений, актуальные или устаревшие в наиболее важных частях?
Оно по большей части достаточно "актуальное", и оно было создано с помощью автоматизированный инструмент некоторое время назад, поэтому здесь мало места для человеческой ошибки.
Тем не менее, несколько новых функций, таких как классы эквивалентности и символы сопоставления , не упоминаются. Вы можете обратиться к документации gnulib (которая является базовой библиотекой, которую используют grep
и find
), чтобы прочитать о них.
Первый раздел, связанный с вашим пунктом 1, 8.5.6
является стандартом для grep
в синтаксисе BRE
. Второй раздел, на который вы ссылаетесь в пункте 1, 8.5.3
является стандартным синтаксисом для grep
в синтаксисе ERE
. Раздел, на который вы ссылаетесь в пункте 2, находится в верхней части той же группы. Если вы прокрутите страницу вниз, то найдете 8.5.3
и 8.5.6
на той же странице. Вместо того чтобы прокручивать страницу вниз, вы можете просто нажать на ссылки внизу 8.5
, и она прокрутится прямо туда. Все эти разделынаходятся на той же странице, просто выше или ниже на ней.