2016-11-08 8 views
0

У меня возникают проблемы со специальными символами в поисковом запросе, отправленном на запрос solr. Когда я ищу номер детали 123-45, я должен получить 2 результата, т.е. 123-45 и 12345. Пожалуйста, дайте мне знать, как я могу это сделать, а также конфигурацию, которую мне нужно использовать в schema.xml СпасибоПроблема Solr с экранированием специальных символов

ответ

0

Если это единственный символ, который вы хотите удалить, используйте PatternReplaceFilterFactory, чтобы заменить «-» с «», когда вы индексации и запросов:

<analyzer> 
    <tokenizer class="solr.KeywordTokenizerFactory"/> 
    <filter class="solr.PatternReplaceFilterFactory" pattern="-" replacement="" /> 
</analyzer> 

KeywordTokenizer будет держать весь срок как отдельный токен, а PatternReplaceFilterFactory удалит любой - и заменит его на ничего, что означает, что индексированный и запрошенный термин будет нормализован до 12345.

+0

Это сработало для меня. Спасибо @MatsLindh – user3364886

0

Использование нечеткого поиска 123-45~0.1

он ищет строки маркера, который имеет Левенштейна расстояние близко к 0.1.

 Смежные вопросы

  • Нет связанных вопросов^_^