|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 29 May 2002 10:47:27 To : Igor Okunev Subject : Re: разбить длиннуй мессагу -------------------------------------------------------------------------------- Здравствуй, Igor Okunev. >> IO> > Кстати, решая аналогичную задачу, написал с разбивкой по границам слов: >> IO> > >> IO> > my @parts = ($line =~ /(.{1,70})\b/g); IO> > >> IO> некорректно отработает, если какой нибудь маньяк напишет 'слово' >> IO> длиньше 70 символов..., в некоторых случаях может быть и больно... IO> > IO> > Тогда просто это слово не будет передано. Если поставить в начале \G, то IO> > не будет передано и все, что за ним. Так что он сам себе злобный маньяк. IO> > Hадо ж понимать, что это SMS и не пытаться пересылать avi в base64 :-) IO> > Кстати, а это мысль... MIME подразумевает строку длиной 76 символов, так IO> > что не специально обученные аттачи режутся автомагически... Правда, IO> > текстовые части не в 8bit при этом считаются аттачами... IO> avi ты получишь, только не целую, а примерно процентов на 8 IO> меньше и не поддающуюся чтению... т.е. первые 6 символов из IO> 76 только отрежутся, вобщем получишь кучу мусора, когда то IO> бывшего авишкой, и спам опять останется не побежденным :) Hу я ж сказал про \G... Hа самом деле там будет другая засада - base64, помимо буквов и цифров содержит еще пару знаквов. IO> а вообще, я про такой например случай говорил, что IO> если перед: IO> my @parts = ($line =~ /(.{1,70})\b/g); IO> $line например проверялось на невозможность нахождения в IO> ней слов начинающихся на 'что либо', то эту проверку IO> этим кодом можно обойти, ну а дальше по обстоятельствам... То есть? Ты проверил $line на невозможность таких слов и положил на результат этой проверки? \b тебе не даст возможности порезать посреди слова. Впрочем, проверка на невозможность нахождения слов, начинающихся на 'что либо', будет безуспешной в любом случае :-) -- Artem Chuprina Communiware.net RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/358.49, ICQ: 13038757 --- ifmail v.2.15dev5 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/14454c39d7767.html, оценка из 5, голосов 10
|