Определение языка

При веб-программировании иногда возникает потребность в определении языка, на котором написан тот или иной текст. Далеко не самым удачным решением будет составление регулярных выражений для этой цели. Есть гораздо более простой и надёжный способ — использование PEAR-пакета Text_LanguageDetect.

Для установки этого пакета можно использовать следующую команду:

pear install channel://pear.php.net/Text_LanguageDetect-0.2.3

API пакета предельно прост. Сначала нужно подключить включаемый файл, затем создать экземпляр рабочего класса. После этого можно обращаться к функциям пакета.

require_once 'Text/LanguageDetect.php';
$l = new Text_LanguageDetect();
$result = $l->detect($text, 4);
if(PEAR::isError($result)) {
    echo $result->getMessage();
} else {
    print_r($result);
}

В данном примере второй аргумент метода Text_LanguageDetect::detect — это число языков, которые нужно вывести. Не обладая интеллектом, класс Text_LanguageDetect определяет язык текста с некоторой долей вероятности, поэтому результатом оценки может быть набор возможных языков Имена языков будут ключами массива, а вероятности, соответственно, значениями.

Есть также метод Text_LanguageDetect::detectSimple, принимающий на вход в качестве единственного аргумента анализируемый текст и возвращающий в виде строки имя наиболее вероятного языка этого текста.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>