Это настраивается с помощью Solr. когда Solr индексирует запись (см. type = "index"), он использует анализаторы и фильтры, которые вы определили в своей схеме. Более того, когда вы выполняете поиск (см. Type = "query"), поиск снова будет проанализирован queryAnalyzer и фильтрами. Это то, что определено в схеме. Я бы предложил использовать прямой веб-интерфейс Solr и проанализировать ваш запрос, а также процедуру индексирования.
например:
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.SynonymFilterFactory" expand="false" ignoreCase="true" synonyms="synonyms.txt"/>
<filter class="solr.StopFilterFactory" enablePositionIncrements="true" ignoreCase="true" words="stopwords.txt"/>
<filter catenateAll="0" catenateNumbers="1" catenateWords="1" class="solr.WordDelimiterFilterFactory" generateNumberParts="1" generateWordParts="1" splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.SynonymFilterFactory" expand="true" ignoreCase="true" synonyms="synonyms.txt"/>
<filter class="solr.StopFilterFactory" enablePositionIncrements="true" ignoreCase="true" words="stopwords.txt"/>
<filter catenateAll="0" catenateNumbers="0" catenateWords="0" class="solr.WordDelimiterFilterFactory" generateNumberParts="1" generateWordParts="1" splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
например, мы можем добавить solr.ISOLatin1AccentFilterFactory для замены акцентированных символов в наборе символов ISO Latin 1 (ISO-8859-1) их безударным эквивалентом
Я бы посоветовал еще раз взглянуть на вашу схему.