У меня есть модуль на основе Apache Lucene 5.5/6.0, который извлекает ключевые слова. Все работает нормально, кроме одного — Lucene не фильтрует стоп-слова.
Я попытался включить фильтрацию стоп-слов двумя разными способами.
Подход №1:
tokenStream = new StopFilter(new ASCIIFoldingFilter(new ClassicFilter(new LowerCaseFilter(stdToken))), EnglishAnalyzer.getDefaultStopSet());
tokenStream.reset();
Подход 2.
tokenStream = new StopFilter(new ClassicFilter(new LowerCaseFilter(stdToken)), StopAnalyzer.ENGLISH_STOP_WORDS_SET);
tokenStream.reset();
Полный код доступен здесь:
https://stackoverflow.com/a/36237769/462347.
Мои вопросы:
- Почему Lucene не фильтрует стоп-слова?
- Как включить фильтрацию стоп-слов в Lucene 5.5/6.0?