Как настроить Lucene whiteSpaceAnalyzer для индексирования слов без специальных символов? - PullRequest
0 голосов
/ 06 апреля 2020

Мне не нужны специальные символы, когда я индексирую слова строки. Я понимаю, что StandardAnalyzer удаляет специальные символы, но также не индексирует стоп-слова и отдельные символы, и я хочу индексировать стоп-слова и отдельные символы.

Например: список сайтов организации отелей (hmo) Проиндексированные слова: список отелей, менеджмент, организация, hmo, site

Есть ли фильтр для этого? Как я могу построить собственный Анализатор для этой цели? Может быть, фильтр, который заменяет не-алфавитные символы c на ""?

1 Ответ

0 голосов
/ 07 апреля 2020

StandardAnalyzer звучит как хорошая подгонка. Просто создайте его с пустым набором стоп-слов:

Analyzer analyzer = new StandardAnalyzer(CharArraySet.EMPTY_SET);

Что касается создания вашего собственного анализатора, проверьте документы Analyzer . Там есть пример того, как должен выглядеть ваш собственный анализатор. Если StandardAnalyzer закрыт, вы можете скопировать из него createComponents в качестве отправной точки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...