Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Perl: Перекодировка кириллического текста (win/koi/iso/utf)

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3

Открыть новую тему     Написать ответ в эту тему

Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть ли алгоритм автоопределения кодировки текста
(нужно скриптом отличить koi-8r от windows-1251, а символы, вроде как, в наборах одинаковые)?

----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 06:20 02-10-2003
Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо всем )
 
Из полезных ссылок только сие попалось:
http://ivr.webzone.ru/articles/defcod_2/index.htm
 
В конце концов нашёл соответствующую функцию на Си...
Кому надо, в вольном переводе на Perl она выглядит так:

Код:
# 0 - win
# 1 - koi
sub detect_encoding
 {
  my @str=unpack "C*", $_[0];
  my $win = 0;
  my $koi = 0;
 
  for($i=0; $i<@str; $i++)
  {
    if($str[$i] > 224 && $str[$i] < 255) {$win++;}
    if($str[$i] > 192 && $str[$i] < 223) {$koi++;}
  }
 
if( $win < $koi ){return 1;}else{return 0;}
 }
(нормально работает со строками примерно в 4-5 и больше символов...)

----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 17:15 20-10-2003
WOweb

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
# ================== SUB win2koi ==================== #
sub win2koi {
    my $str = shift;
    $str =~ tr[\xC0-\xFF\xA8\xB8][\xE1\xE2\xF7\xE7\xE4\xE5\xF6\xFA\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF2\xF3\xF4\xF5\xE6\xE8\xE3\xFE\xFB\xFD\xFF\xF9\xF8\xFC\xE0\xF1\xC1\xC2\xD7\xC7\xC4\xC5\xD6\xDA\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD2\xD3\xD4\xD5\xC6\xC8\xC3\xDE\xDB\xDD\xDF\xD9\xD8\xDC\xC0\xD1\xB3\xA3];
    return $str;
}
# ================== SUB koi2win ==================== #
sub koi2win {
    my $str = shift;
    $str =~ tr[\xE1\xE2\xF7\xE7\xE4\xE5\xF6\xFA\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF2\xF3\xF4\xF5\xE6\xE8\xE3\xFE\xFB\xFD\xFF\xF9\xF8\xFC\xE0\xF1\xC1\xC2\xD7\xC7\xC4\xC5\xD6\xDA\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD2\xD3\xD4\xD5\xC6\xC8\xC3\xDE\xDB\xDD\xDF\xD9\xD8\xDC\xC0\xD1\xB3\xA3][\xC0-\xFF\xA8\xB8];
    return $str;
}
# ================== SUB win2dos ==================== #
sub win2dos {
    my $str = shift;
    $str =~ tr[\xC0-\xFF\xA8\xB8][\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1];
    return $str;
}
# ================== SUB dos2win ==================== #
sub dos2win {
    my $str = shift;
    $str =~ tr[\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1][\xC0-\xFF\xA8\xB8];
    return $str;
}
# ================== SUB dos2koi ==================== #
sub dos2koi {
    my $str = shift;
    $str =~ tr[\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1][\xE1\xE2\xF7\xE7\xE4\xE5\xF6\xFA\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF2\xF3\xF4\xF5\xE6\xE8\xE3\xFE\xFB\xFD\xFF\xF9\xF8\xFC\xE0\xF1\xC1\xC2\xD7\xC7\xC4\xC5\xD6\xDA\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD2\xD3\xD4\xD5\xC6\xC8\xC3\xDE\xDB\xDD\xDF\xD9\xD8\xDC\xC0\xD1\xB3\xA3];
    return $str;
}
# ================== SUB koi2dos ==================== #
sub koi2dos {
    my $str = shift;
    $str =~ tr[\xE1\xE2\xF7\xE7\xE4\xE5\xF6\xFA\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF2\xF3\xF4\xF5\xE6\xE8\xE3\xFE\xFB\xFD\xFF\xF9\xF8\xFC\xE0\xF1\xC1\xC2\xD7\xC7\xC4\xC5\xD6\xDA\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD2\xD3\xD4\xD5\xC6\xC8\xC3\xDE\xDB\xDD\xDF\xD9\xD8\xDC\xC0\xD1\xB3\xA3][\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1];
    return $str;
}
 
 

Всего записей: 45 | Зарегистр. 01-11-2002 | Отправлено: 13:44 22-10-2003
Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Имеется в одном из рефереров пришедших с поисковиков такое чудо:

Цитата:
%A7%E4%A7%D1%A7%DE%A7%E0%A7%D8%A7%D6%A7%DF%A7%DF%A7%D1%A7%F1+
%A7%E1%A7%E0%A7%EA%A7%DD%A7%DA%A7%DF%A7%D1
(в прямой перекодировке из url-encoded вида — §д§С§Ю§а§Ш§Ц§Я§Я§С§с+§б§а§к§Э§Ъ§Я§С)
 
Гугл, если открыть ссылку с таким текстом запроса, прекрасно понимает, что текст запроса — "таможенная пошлина"...
 
Кодировка той китайской страницы гугла с результатами — utf-8, кодировка предыдущей страницы, если верить данным в ссылке — GB2312...
 
Что за кодировка GB2312 (вроде китайская... а русский запрос нормально получился со страницы в ней) и есть ли готовые способы борьбы с такими запросами?

----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 15:04 28-06-2004 | Исправлено: Svarga, 15:04 28-06-2004
XoioX



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cмотри тут CODE




А-у? Как слышимость? Спамеры мастдай — Svarga.

Всего записей: 794 | Зарегистр. 25-06-2004 | Отправлено: 16:49 28-06-2004 | Исправлено: Svarga, 23:46 28-06-2004
Crazy Bull



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
XoioX
Бан за рекламу ты получишь...100%.

----------
Форум НеФормальной музыки

Всего записей: 201 | Зарегистр. 04-08-2003 | Отправлено: 20:14 28-06-2004
nicy



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я смотрю из винды в кои и дос перекодировка есть. А может кто знает как из винды в исо перекодировать. Мне это надо что бы xml файл нормально отображался. Типа при его парсинге перл скриптом с модулем XML::RSS. Этот тупой модуль не может читать кодировку виндовс.

Всего записей: 198 | Зарегистр. 09-01-2002 | Отправлено: 00:55 30-06-2004
Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nicy

Цитата:
А может кто знает как из винды в исо перекодировать.

Модуль: http://search.cpan.org/~amichauer/cyrillic-2.09/


По кодировке никто не знает (я чуть выше спрашивал)?

----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 02:38 30-06-2004
nicy



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Модуль: http://search.cpan.org/~amichauer/cyrillic-2.09/

А этот модуль идёт с каждой устанокой перла или его надо самому устанавливать? Если надо самому то мне нужен другой вариант.
 
И чё у тебя за проблема с кодировкой? Гугл ищит твой запрос. Типа если даже кодировка страницы китайская то запросто твой русский. Он его переделывает и ищит.
 

Всего записей: 198 | Зарегистр. 09-01-2002 | Отправлено: 03:15 30-06-2004
Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nicy

Цитата:
А этот модуль идёт с каждой устанокой перла или его надо самому устанавливать?

самому ставить надо...
Можешь просто в одну директорию со скриптом закинуть из архива модуля cyrillic.pm и koi8-r.map...
А в скрипте:
Код:
use cyrillic qw~win2iso~;
 
print "Content-Type: text/html\n\n";
print win2iso 'слово';

 

Цитата:
И чё у тебя за проблема с кодировкой? Гугл ищит твой запрос. Типа если даже кодировка страницы китайская то запросто твой русский. Он его переделывает и ищит.

гугл это хорошо... но в моей статистике запросы такие коряво показывает... вот про готовое и спрашивал...
 
Добавлено
коряво — это так:

Цитата:
§д§С§Ю§а§Ш§Ц§Я§Я§С§с+§б§а§к§Э§Ъ§Я§С

 
Придумал! ...
 
Добавлено
Собственно, вот соответствия:
Код:
@GB=('\xA7\xD1','\xA7\xD2','\xA7\xD3','\xA7\xD4','\xA7\xD5','\xA7\xD6','\xA7\xD7','\xA7\xD8','\xA7\xD9','\xA7\xDA', '\xA7\xDB','\xA7\xDC','\xA7\xDD','\xA7\xDE','\xA7\xDF','\xA7\xE0','\xA7\xE1','\xA7\xE2','\xA7\xE3','\xA7\xE4','\xA7\xE5','\xA7\xE6','\xA7\xE7','\xA7\xE8','\xA7\xE9','\xA7\xEA', '\xA7\xEB','\xA7\xEC','\xA7\xED','\xA7\xEE','\xA7\xEF','\xA7\xF0','\xA7\xF1','\xA7\xA1','\xA7\xA2','\xA7\xA3','\xA7\xA4','\xA7\xA5','\xA7\xA6','\xA7','\xA7','\xA7\xA8','\xA7\xA9', '\xA7\xAA','\xA7\xAB','\xA7\xAC','\xA7\xAD','\xA7\xAE','\xA7\xAF','\xA7\xB0','\xA7\xB1','\xA7\xB2','\xA7\xB3','\xA7\xB4','\xA7\xB5','\xA7\xB6','\xA7\xB7','\xA7\xB8','\xA7\xB9', '\xA7\xBA','\xA7\xBB','\xA7\xBC','\xA7\xBD','\xA7\xBE','\xA7\xBF','\xA7\xC0','\xA7\xC1');
 
@win=('а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с', 'т', 'у','ф' ,'х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я','А','Б','В','Г','Д','Е', 'Ё','Ж','З', 'И','Й','К','Л','М','Н','О','П','Р' ,'С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь', 'Э','Ю','Я','ї','Ї','є','і','І','ґ','Ґ','ў','Ў','ё','Ё','Є');

(спасибо гуглу за любезно предоставленную перекодировку )
 
Стало быть... если в гуглевском реферере встречается e=GB2312, то после url_decode отправляем выловленный запрос на перекодировку...


----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 03:50 30-06-2004 | Исправлено: Svarga, 04:29 30-06-2004
nicy



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
самому ставить надо...  
Можешь просто в одну директорию со скриптом закинуть из архива модуля cyrillic.pm и koi8-r.map...  
А в скрипте:

Я же уже сказал что мне надо это зделать со стандартными модулями перла. Можно конечно ещё в utf перекодировать.

Всего записей: 198 | Зарегистр. 09-01-2002 | Отправлено: 07:24 30-06-2004
Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nicy

Цитата:
Я же уже сказал что мне надо это зделать со стандартными модулями перла.

а чем не устраивает наличие пары файлов в той же директории, что и скрипт?
и устанавливать не надо...
 
если такое не устраивает, можешь из кода модуля соответствия символов win и iso взять...
 

Цитата:
 Можно конечно ещё в utf перекодировать.


Код:
@utf8=('\xD0\xB0','\xD0\xB1','\xD0\xB2','\xD0\xB3','\xD0\xB4','\xD0\xB5', '\xD1\x91','\xD0\xB6','\xD0\xB7','\xD0\xB8','\xD0\xB9','\xD0\xBA','\xD0\xBB','\xD0\xBC', '\xD0\xBD','\xD0\xBE','\xD0\xBF','\xD1\x80','\xD1\x81','\xD1\x82','\xD1\x83','\xD1\x84', '\xD1\x85','\xD1\x86','\xD1\x87','\xD1\x88','\xD1\x89','\xD1\x8A','\xD1\x8B','\xD1\x8C', '\xD1\x8D','\xD1\x8E','\xD1\x8F','\xD0\x90','\xD0\x91','\xD0\x92','\xD0\x93','\xD0\x94', '\xD0\x95','\xD0\x81','\xD0\x96','\xD0\x97','\xD0\x98','\xD0\x99','\xD0\x9A','\xD0\x9B', '\xD0\x9C','\xD0\x9D','\xD0\x9E','\xD0\x9F','\xD0\xA0','\xD0\xA1','\xD0\xA2','\xD0\xA3', '\xD0\xA4','\xD0\xA5','\xD0\xA6','\xD0\xA7','\xD0\xA8','\xD0\xA9','\xD0\xAA','\xD0\xAB', '\xD0\xAC','\xD0\xAD','\xD0\xAE','\xD0\xAF','\xD1\x97','\xD0\x87','\xD1\x94','\xD1\x96', '\xD0\x86','\xD2\x91','\xD2\x90','\xD1\x9E','\xD0\x8E','\xD1\x91','\xD0\x81','\xD0\x84');
@win=('а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с','т', 'у','ф','х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я','А','Б','В','Г','Д','Е','Ё', 'Ж', 'З','И','Й','К','Л','М','Н','О', 'П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я','ї','Ї','є', 'і' ,'І','ґ','Ґ','ў','Ў','ё','Ё','Є');


----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 15:45 30-06-2004 | Исправлено: Svarga, 15:47 30-06-2004
nicy



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если бы только я скриптом пользовался небыло бы ни каких проблем. Я и так уже XML::RSS модуль так зделал. Дак он мой скрипт убил. Который даже его и не трогает.
А за код спосибо.

Всего записей: 198 | Зарегистр. 09-01-2002 | Отправлено: 20:31 30-06-2004
Teo



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
люди, а зачем такие сложности?
сорри, если ляпну глупость, но я вчера написал скриптец, перекодирующий из любой кодировки в любую (вернее, переименовываюший файлы, переписанные с виндовской тачки, а также "распечатанные" в utf8 мозиллой постскриптовские странички в кои) за полчаса (это, вообще говоря, мой первый скрипт на перле), использовав Text::Iconv, теперь вот хочу сделать автоопределение текущей локали, автоопределение кодировки (скорее всего, с помощью enca) и рекурсивное сканирование каталогов
 
так есть вопрос: как определить текущую локаль, не используя внешних утилит/команд?

Всего записей: 737 | Зарегистр. 21-04-2003 | Отправлено: 13:08 21-11-2004
Gram



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А может кто писал или видел функцию перекодировки из utf-8 в win-1251? Дополнительные модули не предлагать

----------
Intellect Board | Miranda Gram Pack

Всего записей: 388 | Зарегистр. 22-01-2004 | Отправлено: 22:07 30-01-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Gram, а тебе разве не на PHP надо было?
Код:
function UTF8toCP1251($str){ // (С) SiMM
  static $table = array("\xD0\x81" => "\xA8", // Ё
                        "\xD1\x91" => "\xB8", // ё
                       );
  return preg_replace('#([\xD0-\xD1])([\x80-\xBF])#se',
                      'isset($table["$0"]) ? $table["$0"] :
                       chr(ord("$2")+("$1" == "\xD0" ? 0x30 : 0x70))
                      ',
                      $str
                     );
}
Думаю, переписать это на Perl в случае необходимости труда не составит.
PS: а вообще в последнем ответе Svarga чуть выше есть готовые таблицы перекодировки.

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 23:50 30-01-2005 | Исправлено: SiMM, 23:54 30-01-2005
Gram



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SiMM, так я уже писал, что на PHP я нашел и оно уже в действии... Но все равно спасибо. Мне б теперь нужно именно на Perl. Ладно, постараюсь переписать твой вариант на Perl'e (а то ту версию, которую я нашел и переписал на перле - не хочет она работать)


----------
Intellect Board | Miranda Gram Pack

Всего записей: 388 | Зарегистр. 22-01-2004 | Отправлено: 16:38 31-01-2005
Gram



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Блин... Ну никак не могу переписать этот код на перле.. Может поможет кто?

Всего записей: 388 | Зарегистр. 22-01-2004 | Отправлено: 15:02 30-04-2005
been22

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
s




и? /Cheery/

Всего записей: 1 | Зарегистр. 25-04-2005 | Отправлено: 05:05 13-05-2005 | Исправлено: Cheery, 23:00 03-06-2005
cr4k3r



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я реализовал у себя так.

Код:
 
sub utf82win1251 {
    my $mess=shift;
    my %conv='';
my @utf8=('\xD0\xB0','\xD0\xB1','\xD0\xB2','\xD0\xB3','\xD0\xB4',
          '\xD0\xB5', '\xD1\x91','\xD0\xB6','\xD0\xB7','\xD0\xB8',
          '\xD0\xB9','\xD0\xBA','\xD0\xBB','\xD0\xBC', '\xD0\xBD',
          '\xD0\xBE','\xD0\xBF','\xD1\x80','\xD1\x81','\xD1\x82',
          '\xD1\x83','\xD1\x84', '\xD1\x85','\xD1\x86','\xD1\x87',
          '\xD1\x88','\xD1\x89','\xD1\x8A','\xD1\x8B','\xD1\x8C',
          '\xD1\x8D','\xD1\x8E','\xD1\x8F','\xD0\x90','\xD0\x91',
          '\xD0\x92','\xD0\x93','\xD0\x94', '\xD0\x95','\xD0\x81',
          '\xD0\x96','\xD0\x97','\xD0\x98','\xD0\x99','\xD0\x9A',
          '\xD0\x9B', '\xD0\x9C','\xD0\x9D','\xD0\x9E','\xD0\x9F',
          '\xD0\xA0','\xD0\xA1','\xD0\xA2','\xD0\xA3', '\xD0\xA4',
          '\xD0\xA5','\xD0\xA6','\xD0\xA7','\xD0\xA8','\xD0\xA9',
          '\xD0\xAA','\xD0\xAB', '\xD0\xAC','\xD0\xAD','\xD0\xAE',
          '\xD0\xAF','\xD1\x97','\xD0\x87','\xD1\x94','\xD1\x96',
          '\xD0\x86','\xD2\x91','\xD2\x90','\xD1\x9E','\xD0\x8E',
          '\xD1\x91','\xD0\x81','\xD0\x84');
my @win=('а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н',
         'о','п','р','с','т', 'у','ф','х','ц','ч','ш','щ','ъ','ы','ь',
         'э','ю','я','А','Б','В','Г','Д','Е','Ё', 'Ж', 'З','И','Й','К',
         'Л','М','Н','О', 'П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ',
         'Ъ','Ы','Ь','Э','Ю','Я','ї','Ї','є', 'і' ,'І','ґ','Ґ','ў','Ў','ё','Ё','Є');
 
no strict;
{
@hash{@utf8}=@win;
%conv=%hash;
}
 
foreach my $sym(keys %conv) {
    $mess=~s/$sym/$conv{$sym}/g;
}
return $mess;
}
 

Всего записей: 83 | Зарегистр. 27-10-2004 | Отправлено: 15:44 11-10-2005
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3

Компьютерный форум Ru.Board » Интернет » Web-программирование » Perl: Перекодировка кириллического текста (win/koi/iso/utf)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru