Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.07.25;
Скачать: [xml.tar.bz2];

Вниз

Есть ли надежный метод отличить строку OEM от ANSI?   Найти похожие ветки 

 
Aleksandr.   (2004-07-12 16:52) [0]

Две версии программы пишут в разных кодировках - одна в OEM, а вторая - в ANSI. Теперь их данные надо объединить одним обработчиком, но никак не могу сообразить, как по содержимым строки определить, надо ее в ANSI конвертировать или нет.


 
Reindeer Moss Eater ©   (2004-07-12 16:54) [1]

Статанализ либо поиск заведомо имеющихся слов/фраз в тексте.


 
Aleksandr.   (2004-07-12 17:02) [2]

Ну, заведомых нету, а статанализ - это что?


 
Reindeer Moss Eater ©   (2004-07-12 17:12) [3]

статистика.


 
Aleksandr.   (2004-07-12 17:25) [4]

Статистика чего? Я понимаю, что можно попробовать что-то сравнить и подсчитать, но что?


 
Reindeer Moss Eater ©   (2004-07-12 17:28) [5]

Статистика встречаемости слов в языке документа.


 
Алхимик ©   (2004-07-12 17:31) [6]

Смотри информацию про так называемую "марковость".
Вероятность встретить "оро" достаточно высока, а "щщщ" стремится к нулю и т.д.
http://www.yandex.ru/yandsearch?rpt=rad&text=%EC%E0%F0%EA%EE%E2%EE%F1%F2%FC


 
Jeer ©   (2004-07-12 17:32) [7]

Reindeer Moss Eater ©   (12.07.04 17:28) [5]
>Статистика встречаемости слов в языке документа.

..символов..


 
Reindeer Moss Eater ©   (2004-07-12 17:33) [8]

Только если это "оро" написано кириллицей.


 
Anatoly Podgoretsky ©   (2004-07-12 17:34) [9]

Статистические методы не относятся к надежным.


 
Reindeer Moss Eater ©   (2004-07-12 17:37) [10]

В общем легче и дешевле показать юзеру фрагмент текста с перекодировкой и без и предложить выбрать самому.

Что то типа надписи на спине байкера:
"Если вы читаете это, значит моя подруга упала с мотоцикла"


 
Aleksandr.   (2004-07-12 17:48) [11]

Понятно... Проще сравнивать с сетом используемых символов, куда нормальные русские люди не вбивают всякие там знаки параграфа и решетки...


 
Jeer ©   (2004-07-12 17:49) [12]

Anatoly Podgoretsky ©   (12.07.04 17:34) [9]

Мы вообще живем в статистическом мире.:)


 
Reindeer Moss Eater ©   (2004-07-12 17:56) [13]

Проще сравнивать с сетом используемых символов,

Чем проще-то?
У тебя в тексте есть всего лишь байт, а не символ. Символом он станет кода будет ясна кодировка.
А сравнивать ты собрался с символом.


 
Aleksandr.   (2004-07-12 18:09) [14]

Ну, например: ОЕМ-строка, сколько я их ни просматриваю, на трассировке, в содержимом имеет знаки мягкого переноса, параграфы, подчеркивания, копирайты, национальные сиволы:
"?¢áâà «¨©áª¨© ¤®«« à 1"
Естессно, в русском тексте просто нет этих символов, а меня конвертация волнует только с русского OEM. Соответственно, при прогоне строки на сравнение с таким вот набором в 1251:
"0".."9","A".."Z","a".."z","А".."Я","а".."я"," ",",",".","!",":","?",";","""",""","@","&#185;","%","*","(",")","[","]","<",">","/","\","$","#","-",#9
можно быть достаточно уверенным, что любой знак, не попавший в него, является признаком OEM-содержимого строки. Я это дело сейчас опробовал, из трехсот тысяч строчек он ни разу не ошибся с определением: заведомо зная, что помимо этого набора, также не должны встречаться переносы строк - в каждой из OEM-строк оказался символ, не входящий в этот набор. Естессно, в список не включаю примерно 20% строк, которые оказались на английском - их конвертация мне и не нужна.


 
Anatoly Podgoretsky ©   (2004-07-12 19:33) [15]

Jeer ©   (12.07.04 17:49) [12]
Да разве к статистике есть претензии, претензии есть к постановке вопроса "надежный"

Aleksandr.   (12.07.04 18:09) [14]
Раз ты щавел речь про 1251, то тогда не стоит вести речь про OEM/ANSI, а вести речь об конкретных кодировках. OEM/ANSI это другое. Кроме того у тебя сильно ограниченый набор 1251, например у меня в текстах часто встречаются ©®™¤Ё№¬…?‘’“”•¦§«°±ё» и такие же коды в 866, кроме того иногда используются и другие символы.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.07.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.038 c
14-1089177548
Ega23
2004-07-07 09:19
2004.07.25
Ещё раз к вопросу о драйверах


14-1089031958
panov
2004-07-05 16:52
2004.07.25
Цифровой фотоаппарат.


3-1088715451
Alexei Sviridov
2004-07-02 00:57
2004.07.25
Клиент для IB


14-1088711530
Nikolay M.
2004-07-01 23:52
2004.07.25
Кто на диалапе или gprs?


4-1086602471
Тимохов
2004-06-07 14:01
2004.07.25
Двусторонняя печать.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский