Как обнаружить язык текста?

У меня есть форма, которая позволяет пользовательским входным текстовым отрывкам. Таким образом, как может выяснить язык введенного текста?

Конкретно эти языки на данный момент:

Арабский язык: هذه هي بعض النصوص العربية

Китайский язык: 这是一些阿拉伯文字

Японский язык: これは、いくつかのアラビア語のテキストです

[Редактирование] обнаружение имеет работу над текстом, который получен через API также (никакой включенный браузер)

14
задан philfreo 2 November 2010 в 23:46
поделиться

3 ответа

Вы можете определить, какие символы взяты из арабского, китайского или японского разделов карты Unicode.

Если вы посмотрите список в Википедии , вы увидите, что у каждого из этих языков есть множество разделов карты. Но вы не делаете перевод, поэтому вам не нужно беспокоиться о каждом последнем глифе.

Например, ваш китайский текст начинается (в шестнадцатеричном формате) 0x8FD9 0x662F 0x4E00 - и все они находятся в китайском разделе «Унифицированные иероглифы CJK». Вот несколько диапазонов для начала:

Арабский (0600–06FF)

Японский

  • Хирагана (3040–309F)
  • Катакана (30A0–30FF)
  • Канбун (3190–319F)

Китайский

  • CJK Unified Ideographs (4E00–9FFF)

(Я получил шестнадцатеричное значение для вашего китайского языка с помощью конвертера китайского языка в Unicode .)

9
ответ дан 1 December 2019 в 14:32
поделиться

Вы можете использовать Google Ajax API для определения языка фрагмента текста.

2
ответ дан 1 December 2019 в 14:32
поделиться

Предположительно угадывание языка пользователя означает отображение ответов на правильном языке. Как насчет проверки настроек браузера для предпочтительных языков? Получите это из заголовка HTTP Accept-Language . См. Раздел 14.4 здесь .

2
ответ дан 1 December 2019 в 14:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: