Query Solr с акцентом и без акцента
Я работаю над настройкой моего основного solr, который сохраняет бразильские португальские данные.
По поводу акцентов, мне нужно запросить что-то вроде:
search | return
computação | computacao
computacao | computação
Что мне нужно в основном, с или без акцента в запросе, вернуть оба типа слов
Я старался:
<charFilter class="solr.MappingCharFilterFactory" mapping="mapping-ISOLatin1Accent.txt"/>
<filter class="solr.ASCIIFoldingFilterFactory"/>
Безуспешно
Я использую Solr 5.2.1
2 ответа
Попробуйте, добавив BrazilianStemFilterFactory
в качестве фильтра для вашего типа поля, который используется для поиска поля.
Это специально написано для Brazilian Portuguese
, Это может решить вашу проблему.
При использовании многоязычного индекса я создал новое поле для каждого языка, в котором используется текстовое поле для конкретного языка.
Допустим, у вас есть английский и португальский языки, и поэтому вы бы объявили два поля:
- descriptionPt и использовать text_pt
- описание и использование текста
Теперь, когда вы запускаете поиск, вы можете указать, какое поле вы хотели бы использовать или оба, через qf и указать deftype=edismax.
Работал нормально для меня.