Solr问题转义特殊字符

问题描述:

我遇到问题通过查询发送到solr的搜索字词中的特殊字符。 当我搜索零件号123-45时,我应该得到2个结果,即123-45和12345. 请让我知道如何做到这一点以及我需要在schema.xml中使用的配置 谢谢Solr问题转义特殊字符

如果这是您要删除,请使用PatternReplaceFilterFactory更换唯一字符“ - ”与“”当你索引和查询:

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

的KeywordTokenizer将继续全期为单独的令牌,并且PatternReplaceFilterFactory将删除任何-并将其替换为无,这意味着索引和查询的术语将被归一化为12345

+0

这对我有用。谢谢@MatsLindh – user3364886

使用模糊搜索123-45~0.1

它搜索字符串标记,其中有Levenshtein距离接近0.1。