URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8330
[ Назад ]

Исходное сообщение
"grep и регулярные выражениея"

Отправлено Guest2009 , 27-Июн-09 03:43 
Здравствуйте!
Есть файл
text1
text2
text3
text4
text1
text2
как мне с помощью grep вывести строчки, в которых есть text1 и text2? Что я только не пробовал не выходит:(
grep "(text1|text2)" file.txt
В чем моя ошибка?
Спасибо.

Содержание

Сообщения в этом обсуждении
"grep и регулярные выражениея"
Отправлено allez , 27-Июн-09 05:39 
>[оверквотинг удален]
>text2
>text3
>text4
>text1
>text2
>как мне с помощью grep вывести строчки, в которых есть text1 и
>text2? Что я только не пробовал не выходит:(
>grep "(text1|text2)" file.txt
>В чем моя ошибка?
>Спасибо.

Ошибка в злостном пренебрежении чтением манов. ;-)
Читайте man grep на предмет опции -E или используйте egrep.


"grep и регулярные выражениея"
Отправлено Serge , 27-Июн-09 06:35 

>Ошибка в злостном пренебрежении чтением манов. ;-)

согласен

>Читайте man grep на предмет опции -E или используйте egrep.

несогласен

grep "text1\|text2" file.txt


"grep и регулярные выражениея"
Отправлено allez , 27-Июн-09 08:45 
>несогласен
>
>grep "text1\|text2" file.txt

Ну да, можно и так. Но это уже дело личных предпочтений. :-) Мне, например, просто
лениво экранировать каждый спецсимвол (выражения-то бывают и длинными, и очень
длинными), да и удобочитаемости это не добавляет...


"grep и регулярные выражениея"
Отправлено Guest2009 , 27-Июн-09 14:35 
Спасибо:)

"grep и регулярные выражениея"
Отправлено phpcoder , 28-Июн-09 19:13 
>grep "text1\|text2" file.txt

или grep 'text[12]' file.txt



"grep и регулярные выражениея"
Отправлено allez , 28-Июн-09 19:43 
>или grep 'text[12]' file.txt

Сдается мне, что "text1" и "text2" были использованы лишь для примера, а в
реальной жизни автору приходится искать более разнящиеся образцы. :-)