查询 Solr 重音和非重音
Query Solr accented and unaccented
我正在配置保存巴西葡萄牙语数据的核心 solr。
关于口音,我需要查询类似:
search | return
computação | computacao
computacao | computação
我基本上需要的是,查询中有或没有重音,return两种类型的词
我试过了:
<charFilter class="solr.MappingCharFilterFactory" mapping="mapping-ISOLatin1Accent.txt"/>
<filter class="solr.ASCIIFoldingFilterFactory"/>
没有成功
我正在使用 Solr 5.2.1
尝试添加 BrazilianStemFilterFactory
作为用于搜索字段的字段类型的过滤器。
这是专门为Brazilian Portuguese
写的。
这可以解决您的问题。
当使用多语言索引时,我所做的是为使用语言特定文本字段的每种语言创建一个新字段。
假设您有英语和葡萄牙语,因此您需要声明两个字段:
- descriptionPt 并使用 text_pt
- descriptionEn 并使用文字
现在,当您 运行 搜索时,您可以通过 qf 指定要使用的字段或同时指定两者,并指定 deftype=edismax。
对我来说效果很好。
我正在配置保存巴西葡萄牙语数据的核心 solr。
关于口音,我需要查询类似:
search | return
computação | computacao
computacao | computação
我基本上需要的是,查询中有或没有重音,return两种类型的词
我试过了:
<charFilter class="solr.MappingCharFilterFactory" mapping="mapping-ISOLatin1Accent.txt"/>
<filter class="solr.ASCIIFoldingFilterFactory"/>
没有成功
我正在使用 Solr 5.2.1
尝试添加 BrazilianStemFilterFactory
作为用于搜索字段的字段类型的过滤器。
这是专门为Brazilian Portuguese
写的。
这可以解决您的问题。
当使用多语言索引时,我所做的是为使用语言特定文本字段的每种语言创建一个新字段。
假设您有英语和葡萄牙语,因此您需要声明两个字段:
- descriptionPt 并使用 text_pt
- descriptionEn 并使用文字
现在,当您 运行 搜索时,您可以通过 qf 指定要使用的字段或同时指定两者,并指定 deftype=edismax。
对我来说效果很好。