使用Solr从段落中进行短语匹配
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Solr从段落中进行短语匹配相关的知识,希望对你有一定的参考价值。
我有一份国家/地区的文件/名单。
id:国家名称:[伯利兹,贝宁,不丹,玻利维亚,波斯尼亚,波斯尼亚黑塞哥维那,博茨瓦纳,巴西,文莱]
如果我的问题是“我住在波斯尼亚黑塞哥维那”,或者更普遍的是“*波斯尼亚黑塞哥维那*”,那么我希望看到国家作为查询结果。
我只能管理单字国家。谁能帮我解决这个问题?提前致谢。
编辑:
这是该字段的架构配置。
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
和我这样搜索:http://localhost:8983/solr/core/select?q=i love Bosnia Herzegovina&wt=json
我解决了这个问题。实际上问题出在搜索查询中。我们必须使用一对第一个括号嵌入查询。这将解决问题。
之前:http://localhost:8983/solr/core/select?q=i love Bosnia Herzegovina&wt=json
解决:http://localhost:8983/solr/core/select?q=(i love Bosnia Herzegovina)&wt=json
以上是关于使用Solr从段落中进行短语匹配的主要内容,如果未能解决你的问题,请参考以下文章