Главная страница
    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.032 c
14-1088889770
ИМХО
2004-07-04 01:22
2004.07.25
Марлон Брандо скончался


3-1088654519
Alone_Ali
2004-07-01 08:01
2004.07.25
Сортировка в Halcyon е


11-1077827486
ALeX.B.
2004-02-26 23:31
2004.07.25
Как получить доступ к каждому из 4-х полей в IPEdit?


14-1088782505
Baron
2004-07-02 19:35
2004.07.25
Губернатор - клоун


1-1089238481
Zvr@b
2004-07-08 02:14
2004.07.25
Как задать диапазон для Random?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский