|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Oleg 2:5020/400 03 Oct 2002 12:54:27 To : Valentin Davydov Subject : Re: Перлозаменитель -------------------------------------------------------------------------------- On Thu, 3 Oct 2002, Valentin Davydov wrote: > >while ($tmp=<>) > >{ > > $tmp=~s/^[ \t]*[\r\n]+$//; # это просто убираем пустые строки > ># в случае вот такой последовательности заменяем ее пробелом > ># т.е. этот перенос строки переносом не является > > $tmp=~s/^\r\r\n$/ /; ^-ошибочно, читать s/\r\r\n$/ / > > print "$tmp"; > >} > > Строчка "^M^M^J" подходит под регэксп из первого присваивания. То есть до > второго дело никогда не доходит. Ты уверен, что тебе нужно именно это? > Может, лучше задачу словами описать? вкраце так: есть некоторый текст, может быть 10 строк, а может и 10000, в котором нормальные строки отделяются \r\n. Hо иногда, строка разбивается на две, при этом она заканчивается на \r\r\n. Такую строку не надо прерывать, а надо дописать за ней следующую, пока не встретится нормальный конец строки. Из-за возможно большого обьема текстов - обработку делаю построчно. Перлом. От чего и хочу уйти... --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/19529cab0572b.html, оценка из 5, голосов 10
|