Apache Lucene拆词和搜索的问题,搜索搜不到相关的结果?求指教

发布于 2021-11-25 16:46:00 字数 434 浏览 845 评论 11

整理一下问题,大概是这样:

假设一句话,被拆出了一堆词,如果不用这一些词的其中之一来搜,就搜索不到。
比如:"苹果笔记本 Macbook Pro",这个名称,被拆出了 苹果笔记本、macbook、pro三个词,那么我只能搜索这三个词才可以,我搜苹果或者笔记本都搜不出结果。

1.由于mmseg4j 的关系,选择了SimpleAnalyzer 分析器

2.字典中存在:苹果、笔记本、苹果笔记本

假设我在名称:"苹果笔记本 Macbook Pro" 上增加一个词『苹果』,变成"苹果苹果笔记本 Macbook Pro",那么拆词的时候就会增加一个『苹果』的词,那么我搜『苹果』,就可以搜索到。

这个问题不知道是不是bug,还是设计就如此。觉得很奇怪~~~~
个人认为,就算拆词了,也不能把模糊查询,这么基本的功能给去掉。请指教一下、谢谢。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(11

背叛残局 2021-12-02 08:31:27

我想即能分词查询,也保留模糊查询,可以实现么? 用 MaxWord,虽然分词多了,但是不搜拆除的词还是查不出来

滥情空心 2021-12-02 08:26:41

回复
你可以考虑先分词再去查询,不能分词的再用模糊查询,我们的部分业务就这么做的

泛泛之交 2021-12-02 08:11:36

回复
嗯, 这个好像不错。 可以考虑一下 谢谢。

爱的故事 2021-12-02 08:05:06

建议索引分词的时候采用 max-word
方式

悟红尘 2021-12-02 07:32:57

我想即能分词查询,也保留模糊查询,可以实现么? 换用 MaxWord,虽然分词多了,但是不搜拆除的词还是查不出来

奢望 2021-12-02 03:51:04

回复
可以的。 我觉得你要看下lucene的基础知识再做东西。否则你这样遇到一个问题问一下问题是做不下去的。

顾挽 2021-12-02 03:11:36

回复
我就是想同时保留这两个功能。

猫烠⑼条掵仅有一顆心 2021-12-02 03:10:25

你用的分词器可能有问题:SimpleAnalyzer。你换一个试一下。

同时,你也要注意:索引时和搜索时应该用的同一个分词器

把昨日还给我 2021-12-01 21:12:45

嗯,我是想知道这个可以解决么?还是设计如此。 - - 至少要给客户一个合理的解释。。

醉生梦死 2021-11-28 12:33:59

把苹果笔记本这个词删掉就好了,你的分词单元分的有点大,一般用2个字为一个词拆分就可以具体看客户需求

凯凯我们等你回来 2021-11-25 19:58:13

在你的词库中,苹果和苹果笔记本都是基本的词汇,当时在建立索引的时候并没有建立关于苹果的索引,只有苹果笔记本的索引,所以你用苹果这个词是搜索不到苹果笔记本的

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文