LINUX.ORG.RU

Текст от фразы до фразы


0

0

А еще есть такой вопрос.

Есть текст, как-то можно вывести часть этого текста с какой-то по какую-то фразу.

К примеру такой текст.

"Пишите в правильный форум! Выберете подходящий по теме вашего вопроса раздел форума, например вопросы по администрированию системы нужно задавать в Admin, а не в General и т.п."

Нужно вывести текст начиная со слова "Пишите" и до слова "форум".

"Пишите в правильный форум!"

Спасибо.

Используйте следующее регулярное выражение:

Пишите.*?форум

dmitry_vk ★★★
()

cat text | awk -vx='Пишите' -vy='форум' '(state == 0 && match($0,x)) { state=1; $0=substr($0,RSTART) } (state == 1 && match($0,y)) { $0=substr($0,0,RSTART+RLENGTH); printf "%s%s\n",prev,$0; exit } (state == 1) { prev=sprintf("%s%s\n",prev,$0) }'

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

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

ananas ★★★★★
()

/usr/bin/perl

$file = $filename;
open(FF, "$file");

$text=/^\w+\s\w+\s\w+\s\w+/;

print "$text\n";

както так, перла под рукой нет, но принцип такой

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