Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Как определить, на каком языке строка


Автор: Vasay 7.4.2009, 23:43
Есть задача - определить на каком языке написана строка, полученная от xml службы.

Строки приходят в utf.

Вопрос - как это сделать? И вообще возможно такое без составления словарей?
Впринципе, меня устроило бы определение раскладки (т.е. русская, украинская, латиница, китайская, японская, немецкая ).
Я понимаю, что можно сделать по наличию определенных символов,  но может есть другие варианты. И если по символам - то где взять список символов характерный для того или иного языка?

Автор: xjavax 8.4.2009, 09:19
А почему бы просто не создать поле (массив или что нить в таком духе), и сравнивать если первый символ относится допустим к masEng то английская иначе русская!!!

Автор: math64 8.4.2009, 10:13
Если тот, кто посылает xml, знает язык, он может его сообщить, например так:
Код

<string lang="ru">Строка</string>

В каком-то номере жунала "Химия и Жизнь" был опубликован Определитель языков

Автор: Vasay 8.4.2009, 10:19
xjavax, 

потому что "d" есть, например и в немецком и в английском и...

Автор: math64 8.4.2009, 10:31
В немецком есть ä ö ü ß, которых в английском нет. В английском есть and, a, an, the, в немецком und, der, die, das

Автор: Vasay 8.4.2009, 10:57
math64, 
С этим я согласен. Вопрос только в том:
Цитата

где взять список символов характерный для того или иного языка? 

Автор: math64 8.4.2009, 11:07
Попробуй найти тот журнал "Химия и Жизнь" (за 70-е годы), там есть списки букв, характерных для разных языков и наиболе часто употребляемых слов (предлоги, союзы, артикли, глаголы be и have)

Автор: ivg 8.4.2009, 16:06
http://code.google.com/intl/ru/apis/ajaxlanguage/documentation/#Detect (JavaScript, google online)
http://alias-i.com/lingpipe/demos/tutorial/langid/read-me.html (Java)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)