Я, может казаться, не выясняю, как найти соответствия подстроки с SOLR, я выяснил соответствия на основе префикса, таким образом, я могу заставить ветчину соответствовать гамбургеру.
Как я заставил бы поиск 'бургера' соответствовать гамбургеру также? Я попробовал бургер, но это бросило ошибку '*' или'?' не позволенный как первый символ в WildcardQuery.
Как я могу соответствовать подстрокам с помощью SOLR?
Вы можете включить это, но это потребует значительных ресурсов (например, поиск SuffixQuery).
См .: http://lucene.472066.n3.nabble.com/Leading-Wildcard-Search-td522362.html
Цитирование списка рассылки: Как работает? Представьте себе создание второго индекса (или добавление другого поля) со всеми терминами, написанными в обратном порядке.
=>
См. Добавление ReverseStringFilter https://issues.apache.org/jira/browse/LUCENE-1398
и Поддержка эффективного поиска ведущих подстановочных знаков: https: // issues .apache.org / jira / browse / SOLR-1321
На данный момент кажется, что issues.apache.org не работает. Попробуйте использовать, например, кеш Google.
Как было сказано ранее в ссылке , вы можете использовать ведущие подстановочные знаки с edismax (ExtendedDismaxQParser). Просто попробуйте, чтобы убедиться, что он достаточно быстрый.
Дополнительную информацию о вышеупомянутой перевернутой строке можно найти здесь: solr.ReversedWildcardFilterFactory