<%ARGS> $str => undef <%INIT> use vars qw($keeper $request); # Перекодировка... if ($request->{local_codepage} ne 'KOI8') { my $str_ = Convert::Cyrillic::cstocs($request->{local_codepage}, 'KOI8', $str); $str = $str_; } # Вырезаем все ненужное... my %ws = ( chr(0x97)=>'—',chr(0xAE)=>'®',chr(0xA9)=>'©',chr(0xAD)=>'­', chr(0x88)=>'€',chr(0x93)=>'“',chr(0x94)=>'”', chr(0xAB)=>'«',chr(0xBB)=>'»',chr(0x85)=>'…',chr(0xA7)=>'§', chr(0xB0)=>'°',chr(0x96)=>'–',chr(0x99)=>'™',chr(0xB1)=>'±', chr(0x85)=>'…',chr(0x91)=>'‘',chr(0x92)=>'’',chr(0x84)=>'„', chr(0x95)=>'•',chr(0xB9)=>'№'); foreach my $s (keys(%ws)) { $str =~ s/$s/$ws{$s}/g; } $str =~ s/\r//g; # $str =~ tr/\202\204\213\221\222\223\224\225\226\227\233\246\253\271\273/\,\"\<\'\'\"\"\-\-\-\>\|\"\N\"/; return $str;