|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Alan Long 2:5030/1082.72 22 May 2002 01:25:01 To : Rostislav Podgornyi Subject : разбить длиннуй мессагу -------------------------------------------------------------------------------- * Originally from Rostislav Podgornyi (2:4635/83) to Alan Long. AL> Я решал подобную проблему, только мне приходилось резать на куски по AL> 250 символов ;-) Решил с помощью Text::Wrap. RP> покажи плиз скpиптик - 8<- - use Text::Wrap qw(wrap $columns); my $MaxLen = 251; #.... $columns = $MaxLen - 7; my @parts = wrap( '', '', $text ); $parts[0] .= '...'; $parts[$#parts] = '...' . $parts[$#parts]; if( $#parts > 2 ) { for( my $i = 1; $i < $#parts; $i++ ) { $parts[$i] = '...' . $parts[$i] . '...'; } } foreach ( @parts ) { send_message( $_ ); } - 8<- - В твоем случае $MaxLen изменить на 160 или на 161... AL> Можно конечно через AL> substr или через /(.{1,160})/ сделать, но тогда получившееся читать AL> крайне неудобно. RP> меня оно вполне устpаивает, но там какие-то непонятные пpоблемы с RP> pусским языком. если сообщение полность на pусском, то оно не хочет RP> его pезать :( Странно, а руский текст у тебя в какой кодировке ? RP>> ю С наилучшими пожеланиями Rostislav! -- With best, Ъ-· Ъ Е-ЧLaі\і <alan@x-rays.eu.org> --- timEd/386 1.10+ * Origin: X - Rays Station (2:5030/1082.72) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/4581ceabc790.html, оценка из 5, голосов 10
|