后台问题解答(2015-12-04)

2018-05-14 14:07:41 浏览数 (1)

问题:

solr采用标准分词器搜索中文时怎么控制搜索的文本内容是正序,如我要搜索“小李”,只想搜出小李飞刀这样的内容,像李小龙这样的内容不做检出

回复:

标准分词器,对中文汉字会基于单字切分,所以:

小李飞刀 会切分成 小 | 李 | 飞 | 刀 李小龙 会切分成 李 | 小 | 龙

基于lucene扩展的搜索引擎solr和elasticsearch,在索引时都会基本都会加上切分词的位置,偏移量等,所以如果你想控制正序搜索内容,其实就可以用距离查询来解决这个问题, 对搜索词加上双引号(距离查询为0语法,也就是限制两个词必须从左到右挨在一起)即可

0 人点赞