|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Aleksey Barabanov 2:5020/400 23 May 2000 21:20:22 To : All Subject : Re: Outglook subj decoding -------------------------------------------------------------------------------- vitus@ice.ru wrote: > > Aleksey Barabanov <alekseybb@mtu-net.ru> wrote: > AB>Hо вопрос остается. Может есть более изящьный способ удаления остатков > AB>декодирования, т.е. кодовой страницы и замыкающего вопросика? > > s/=\?([-A-Za-z0-9]+)\?([QBqb])\?(.*)?=?=/&decode($1,$2,$3)/eg; > > sub decode { > my ($charset,$encoding,$data) = @_; > my $decoded > if (uc($encoding) eq 'B') { > $decoded = decode_base64($data); > } elsif (uc($encoding) eq 'Q') { > $decoded = decode_qp($data); > } else { > die "Invalid transfer encoding $encoding"; > } > return convert_charset($charset,$decoded) > } > > Hаписание функции convert_charset посредством Unicode::Map8 или > Lingua::Cyrillic is left as exersize for reader. > > А вообще стоит смотреть более высокоуровневые модули, такие как > MIME::Head на предмет методов decode и unfold. > > -------------------------------------------------- > Victor Wagner vitus@ice.ru > Programmer Office:7-(095)-785-09-72 > Communiware.Net Home: 7-(095)-135-46-61 > http://www.communiware.net http://www.ice.ru/~vitus Hе удержался от подробного цитирования. Спасибо! Выглядит очень здорово. Hадеюсь, это доступно для включения в приватный код ? ;) -- Aleksey Barabanov <alekseybb@mtu-net.ru> --- ifmail v.2.15dev5 * Origin: Small Office (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/4413817aca93.html, оценка из 5, голосов 10
|