|
Я это делаю Персональное меню Голосование Клуппы Yato ![]() Деньги, но неинтересная работа и невозможность уделить время семье Интересная работа, возможность саморазвиваться, но нищенский заработок Ваш возраст (не обязательно) Почему? (не обязательно) Голосование закрыто. Поиск по сайту Реклама
Статистика |
charset_x_win -- Преобразовать строку на русском языке из неизвестной кодировки в кодировку windows-1251 Описание
Требуемая библиотека: Конвертирует строку из неизвестной кодировки в кодировку windows-1251.
Замечание: Поскольку вопрос корректности кодировки не касается символов с кодом меньше 128, то входная строка может быть так же и на английском, в транслите или на любом другом языке, в котором используются только символы с кодом меньше 128. Функция правильно обрабатывает буквы Ё,ё и символы «». Функция специальным образом оптимизирована для конвертирования коротких фраз. Суть оптимизации состоит в подсчёте недопустимых двух- и трёх-символьных последовательностей для слов русского языка. Для конвертирования больших текстов вполне подходят и более простые методы, состоящие в простом подсчёте допустимых/недопустимых символов. Однако функция может быть использована и для конвертирования текстов значительных размеров. При конвертировании больших текстов для анализа кодировки используется начальный фрагмент текста, в котором содержится 256 символов с кодом больше 127. Работа функции состоит в следующем. Исходная строка последовательно конвертируется из всех предусмотренных кодировок в кодировку windows-1251. Для каждого варианта конвертирования определяется некоторый числовой вес, который соответствует степени корректности фразы на русском языке. Этот вес зависит от следующих параметров входной строки:
Пример использования функции
Результат выполнения этого примера:
Смотрите такжеСкачать файл скрипта с функцией Иван Рощин. Автоматическое определение кодировки текста Функция для формирования массивов внутри функции Последняя модификация: 29.12.09 16:44 Обсуждение статьи в форуме 22.06.06 01:56 Владимир Вообще отлично, молодец! 28.07.06 09:30 Алексей Крылов, Ptechka dot ru Юрию Попову - большое спасибо. Использую в своём парсере поисковых запросов из реферрера, отлично работает. Кстати, с Я.Маркета приходят люди с такими реферрерами: «http://market.yandex.ru/search.xml?hid=&text=рїсѓр»сњсѓрѕрјрµс‚сђ&grhow=shop&numdoc=&how=pricemin&asc=1&np=1». p.s. в библиотеке непрописанная функция debug_info - нужно поставить заглушку. 05.08.06 19:42 Imbolc Респектище :) 08.01.07 15:58 гость Здоровски, очень полезно! Вот только так и не удалось запустить, ибо не определена ф-ия debug_info() - почему так вышло - не знаю. Использую исходной код библиотеки. Попробовал убрать её вызов, но тогда ничего не преобразуется. Как обойти ? 19.01.07 00:47 popoff
fixed. 08.02.07 11:35 rommul at km dot ru Огромное спасибо за скрипт. Он меня очень выручил! 24.04.07 16:13 Aleksey Очень хорошо работает скрипт. Жалко что нет поддержки UNICODE 25.04.07 21:31 Ctrange Не вполне корректно отрабатывает спецсимволы и знаки препинания ~~~~~ 25 Апр 2007, 21:45 ~~~~~ В продолжение: Заменил функцию $r = iconv(“utf-8”, “windows-1251”, $s); return $r; } 13.05.07 09:10 Igor А скрипт суперский еще бы потдержку UTF и было бы суппер. 13.05.07 11:20 popoff
fixed
Not accepted. Из-за возможности неправильных символов, от которых iconv может тошнить.
Скрипт поддерживает UTF-8. 13.05.07 14:30 Игорь Да iconv это что то.Кстати твой скрипт меня спас.Спасибо большое за него.Я имел ввиду хорошо бы перекодировка не в windows-1251 а еще бы в UTF-8 то есть функция типа charset_x_utf8 14.05.07 10:08 ИГОРЬ
И еще добавлю.Ведь счас идет работа именно с UTF-8 тесть windows-1251 отходит в небытие.Имеет смысл сделать перекодировку в UTF-8 с неизвестной кодировки.эТо был бы золотой скрипт 04.06.07 11:02 sweater Огромное спасибо. 25.06.07 08:49 Khabibulin Все конечно круто! Но как быть с Украинскими символами, такими как “іІїЇєЄ”? 25.06.07 16:47 Sebekon Отличнейший скрипт, работает очень быстро. тогда функция будет ещё универсальнее. 26.06.07 16:50 noindex popoff - Вы гений. Просмотреть все комментарии в режиме форума. Всего комментариев: 87
|