Intereting Posts
$ this-> db-> insert_id (); возвращая 0 каждый раз в codeigniter Преобразование разделенных запятыми строк в список Каков надлежащий формат документации по функциям PHP? Как исключить столбцы certains при использовании красноречивых легко переносить базу данных wordpress с локального на производство Mysql_fetch_assoc (): предоставленный аргумент не является допустимым результатом MySQL … Как использовать библиотеку imagemagick с обработкой? XML с ошибкой «echo» PHP «Дополнительный контент в конце документа» CMS на основе CodeIgniter Загрузите веб-страницу с изображениями и таблицами стилей и (необязательно). Как отправить URL-адреса на php-сервер и вернуть ответ на андроид Расчет / оптимизация битрейта FFMPEG Невозможно получить Twitter Typeahead для работы в Bootstrap Как получить во время выполнения название маршрута в Symfony2 при использовании описания маршрутов yaml? Получение содержимого DIV с помощью регулярного выражения

Как определить язык текста?

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

В частности, эти языки на данный момент:

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

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

Японский: こ れ は, い く つ か の ア ラ ビ ア の テ テ す す す す

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

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

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

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

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

Японский

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

Китайский

  • Унифицированные идеограммы CJK (4E00-9FFF)

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

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

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

Я изучаю то же самое, для серверной части. До сих пор я нашел https://code.google.com/p/language-detection/ . Надеюсь, это поможет кому-то.

Вы можете использовать https://detectlanguage.com/, который представляет собой создание веб-службы вокруг CLD2.