LINUX.ORG.RU

Особенности синтаксиса регулярный выражений в grep

 ,


0

1

Подскажите пожалуйста, какие особенности есть в регулярках grep’a? Какие настройки надо поставить в https://regex101.com/ чтобы протестировать аналогично? попробовал /gm (global, multiline) так он на сайте находит, а в через команду - нет

Флаги не передать так /.../i, нужно grep -i и тп

tz4678_2
()
Ответ на: комментарий от wall_jvm

Как можно искать совпадения сразу по нескольким строкам?

Стандартная grep не может делать это, поскольку в своей основе её работа основана на построчной обработке. Следовательно, просто использование класса символов [:space:] не обработает новую строку (newline) тем способом, как вы могли бы ожидать.

С опцией -z (–null-data) GNU grep, каждый ввод и вывод «строчки» разделён символом null;

да уж, блин как вообще пользоваться то регулярками, похоже проще через perl проще будет.

wall_jvm
() автор топика
Последнее исправление: wall_jvm (всего исправлений: 2)
Ответ на: комментарий от wall_jvm

Текст разбивается на строки, а затем каждая строка сравнивается с шаблоном grep <pattern>, если она совпадает с ним, то выводится

tz4678_2
()
Ответ на: комментарий от tz4678_2

а если найденная строка большая, то точно выводится в терминал? как себя ведёт grep в этом случае? если не выводит можно хоть понять нашёл он или нет?

wall_jvm
() автор топика
Ответ на: комментарий от wall_jvm

красным подсвечивается найденная часть строки. строка выводится полностью, если не задано иное

tz4678_2
()

AWK умеет. Он не сложнее грепа. Даже иногда более предсказуем чем его коллеги: sed grep tr tail head bc и пр. Умеет делать все что делают выше перечисленные утилиты. И все он помнит. ")

Boott
()
Последнее исправление: Boott (всего исправлений: 2)
Ответ на: комментарий от Boott

Он не сложнее грепа.

Ну, как посмотреть... grep только grep'ает, а на awk'e можно целый тетрис написать :))

YAR ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.