Bartez
@Bartez

Вопрос по Lucene.net?

Нужен рабочий пример поиска с учётом словоформ на движке Lucene.net.

Т.е. что бы по запросу «cars» находил «car».


Можно самый простой пример, можно только для английского языка — главное чтоб рабочий!

Перерыл весь гугл. Е**сь разбираюсь с кодом несколько часов, либо поиск по словоформам не работает, либо поподаю на внутренние Exception самого Lucene.net.

Видимо делаю что то не так, а разобраться не могу.


Буду рад любой помощи.
  • Вопрос задан
  • 3848 просмотров
Пригласить эксперта
Ответы на вопрос 2
mark_ablov
@mark_ablov
это называется стемминг.
смотрите — stackoverflow.com/questions/1192671/how-to-enable-stemming-when-searching-using-lucene-net
сам я такое для люсины не делал, но для солра доводилось.
Ответ написан
Комментировать
@vit256
Нужно использовать SnowballAnalyzer. Простой пример индексирования:

Analyzer analyzer = new SnowballAnalyzer(Version.LUCENE_34, "Russian", StopAnalyzer.ENGLISH_STOP_WORDS_SET);
IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_34, analyzer);
IndexWriter writer = new IndexWriter(dir, config);

Document doc = new Document();
...
writer.addDocument(doc);

Вот еще ссылка:
http://stackoverflow.com/questions/5391840/stemming-english-words-with-lucene
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы