LINUX.ORG.RU

Найти выражение в тексте.


0

0

Задача найти по регулярному выражению в тексте определённый набор символов/букв. Пробовал тем же grep, но при: grep '\>\(.*\)\<' test.txt Он выводит строки, в которых найдено совпадение. А вот мне надо чтобы выводило строку не целиком, а именно выражение, которое совпадает с моими критериями поиска. Как это сделать в php, java - понятно, но как сделать в консоли - не могу найти. Помогите начинающему ;)

man grep /--only-matching (оно же -o) не то?

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

Да, спасибо, я видел этот параметр, но при:

grep '\>\(.*\)\<' test.txt

Он выводит полное совпадение, а мне бы только то что в (.*), вот в чём проблема.

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

grep '\>\(.*\)\<' test.txt

Он выводит полное совпадение, а мне бы только то что в (.*), вот в чём проблема.

sed -n 's,^.*>\(.*\)<.*$,\1,p' test.txt

?

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

греп не умеет нормально работать с регулярными выражениями. sed.

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