ФОНЯ создал пользовательскую поисковую систему, которая отлично работает на английском языке, но не работает на японском языке, несмотря на подтверждение от моего хост-сервера, что я правильно выполнил установку японского синтаксического анализатора mecab. Мои собственные проверки показывают следующее:
1) ПОКАЗАТЬ СОЗДАТЬ СТОЛ:
Полный текстовый ключ
search_newsletter
(letter_title
,letter_abstract
,letter_body
) / *! 50100 с парсеромmecab
* /
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARSET ПО УМОЛЧАНИЮ = latin1
2) ПОКАЗАТЬ ПЛАГИНЫ:
нграм | АКТИВНЫЙ | FTPARSER | NULL | GPL |
мекаб | АКТИВНЫЙ | FTPARSER | libpluginmecab.so | GPL
РЕАЛИЗАЦИЯ
1) Заявление MYSQL:
$sql ="SELECT letter_no, letter_lang, letter_title, letter_abstract, submission_date, revision_date, MATCH (letter_title, letter_abstract, letter_body) AGAINST (? IN NATURAL LANGUAGE MODE) AS letter_score FROM sevengates_letter WHERE MATCH (letter_title, letter_abstract, letter_body) AGAINST (? IN NATURAL LANGUAGE MODE) ORDER BY letter_score DESC";
2) ТАМОЖЕННЫЙ ПОИСКОВЫЙ ДВИГАТЕЛЬ:
Смотрите под Локальный поиск / Информационные бюллетени в https://www.grammarcaptive.com/overview.html
3) ДОКУМЕНТ ПОИСК:
Смотрите под Регулярные обновления / Информационный бюллетень / Архивы / Японский в https://www.grammarcaptive.com/overview.html
КОММЕНТАРИЙ: Ни PHP, ни MySQL не жалуются. Просто любой поиск по японскому слову, который нужно проанализировать, не возвращается. Например, слово 日本語 может быть найдено и найдено, но не требует извлечения для анализа. Поиск любого другого японского слова в бюллетене не удается.
ЗАПРОС: Любые советы по устранению неполадок будет принята с благодарностью.
Родди
Несколько вещей, которые вы можете проверить:
Mecab работает в командной строке?
Вы должны быть в состоянии сделать что-то вроде этого, предполагая систему, похожую на Linux:
echo "日本語ですよ" | mecab
Вывод должен быть примерно таким (детали могут отличаться):
日本 名詞,固有名詞,地名,国,*,*,ニッポン,日本,日本,ニッポン,日本,ニッポン,固,*,*,*,*
語 名詞,普通名詞,一般,*,*,*,ゴ,語,語,ゴ,語,ゴ,漢,*,*,*,*
です 助動詞,*,*,*,助動詞-デス,終止形-一般,デス,です,です,デス,です,デス,和,*,*,*,*
よ 助詞,終助詞,*,*,*,*,ヨ,よ,よ,ヨ,よ,ヨ,和,*,*,*,*
На некоторых платформах mecab статически связан в MySQL, поэтому вам не нужно устанавливать систему, но документы указать, что это не всегда так.
Правильны ли ваши настройки кодировки?
Набор символов по умолчанию вашей таблицы latin1
, который не будет работать с японским текстом. Я бы предложил использовать utf8, и вам нужно проверить, поддерживает ли это ваша установка mecab.
Надеюсь, это поможет.
Других решений пока нет …