Apache Solr поисковый запрос, когда пользователь сделал TYPO в тексте - PullRequest
2 голосов
/ 06 февраля 2020

Я добавил данные в solr.

Значения поля имени: "batman", "bat man", "bat-man"

, поэтому, если пользователь искал "btman" "результат должен показать все вышеуказанные значения в поиске.

Я нашел запрос вроде: localhost:8983/solr/test/select?q=Name%3Abtman~2

, но он не будет работать во всех случаях.

I нужно предложение для запроса Solr, который извлекает результат с опечатками и рекомендациями.

Ответы [ 2 ]

1 голос
/ 17 февраля 2020

Solr поставляется с компонентом SpellCheck. Компонент SpellCheck предназначен для предоставления встроенных предложений запросов на основе других похожих терминов. Основой для этих предложений могут быть термины в поле в Solr, внешне созданные текстовые файлы или поля в других индексах Lucene.

В вашем случае компонент проверки орфографии поможет вам достичь того же.

Пожалуйста, обратитесь к документации solr для настройки компонента проверки орфографии.

Компонент Solr SpellCheck

Если вы запрашиваете следующий URL:

http://localhost:8986/solr/upgrade1/spell?q=retil&spellcheck.build=true&spellcheck=on&wt=xml

Страница результатов:

enter image description here

1 голос
/ 06 февраля 2020

IMO, вы должны использовать Фильтр синонимов в Solr.

Вам необходимо создать файл синонимов и передать его в качестве входных данных, если вы считаете, что такие орфографические ошибки будут иметь место.

...