繁体   English   中英

solr 搜索有空格和没有空格

[英]solr search with whitespaces and without whitespaces

我想在文档中搜索带有空格和没有空格的产品,如"base ball" , "baseball"

如果有人搜索“baseball”,结果应该获取“baseball”和“base ball”的记录

我不能这样做,我也不想为此使用“同义词”。

我使用过滤器类"WordDelimiterFilterFactory"来获得结果,我在同义词文件中使用关键字,如太阳镜代表太阳镜,钥匙链代表钥匙链。

但是这样的词会更多,所以很难找到这样的词,即使拆分后含义相同。

所以我正在寻找不需要使用同义词来获得所需结果的解决方案

我已经尝试通过设置catenateWords='1'来获得该结果,但它也与结果不匹配。

如果不添加同义词,这是不可能的。 您应该添加 base ball 作为棒球的同义词。

WordDelimiterFilterFactoryWordDelimiterFilterFactory

即使您使用WordDelimiterGraphFilterFactory也不可能。

generateWordParts :它像棒球一样在驼峰式拼写中拆分单词......但对你来说并非如此。

catenateWords :它也不适用于您的情况,因为您的单词没有任何特殊的字符或连字符分开加入。 例如 wi-fi 将获得 wifi。

所以要么你的数据应该有单独的词来索引。 这意味着如果您不想使用同义词,那么您必须推动棒球和棒球进行索引,然后只有您才能对这些词进行搜索。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM