如何忽略SOLR搜索中的重音?

时间:2017-07-25 07:41:20

标签: solr diacritics

对于搜索关键字,例如solr 6.5中的“mäcman”。我想搜索忽略重音字符为“macman”。当用户用“mäcman”搜索时,它正在给予resut。但是当用户使用“macman”搜索时,它没有给出任何结果。 我改变了配置文件, solr / core_name / conf / managed-schema,如下面的配置。

尝试1: 我在路径solr / core_name / conf /

中包含了mapping-FoldToASCII.txt文件
<fieldType name="string_ci" class="solr.TextField" >
    <analyzer type="index">
    <charFilter class="solr.MappingCharFilterFactory" mapping="mapping-FoldToASCII.txt"/>
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.ASCIIFoldingFilterFactory" />
    </analyzer>
    <analyzer type="query">
    <charFilter class="solr.MappingCharFilterFactory" mapping="mapping-FoldToASCII.txt"/>
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.ASCIIFoldingFilterFactory" />
    </analyzer>
</fieldType>

尝试2:

<fieldType name="string_ci" class="solr.TextField">
    <analyzer type="index">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.ASCIIFoldingFilterFactory" />
    </analyzer>
    <analyzer type="query">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.ASCIIFoldingFilterFactory" />
    </analyzer>
</fieldType>

两种情况都不适用于在没有重音字符的情况下搜索solr中的关键字。请描述此问题的原因。 感谢。

analysis screenshot

accent search screenshot

0 个答案:

没有答案