9
回答
lucene 的中文精确匹配问题
华为云4核8G,高性能云服务器,免费试用   

遇到了个麻烦想了很久

Lucene做全文检索的时候 对句子用IKAnalyzer 分词 

然后需求是 能做到比如类似 word 中 ctrl +f 那种 精确匹配的

比如句子  “大家好”

”大家“ && “家好” 这种都能搜到结果 

该怎么进行查询 

比如 “百度公司” 我希望 搜索 “度公” 也出来结果 应该怎么分词 以及 搜索


举报
下次错
发帖于2年前 9回/1K+阅
共有9个答案 最后回答: 2年前
你是打算只有输入大家好才能出结果,输入大家或者家好的时候不出结果吗?
--- 共有 1 条评论 ---
下次错这三种情况都要出结果 就有点想 word中 搜索的那种效果 2年前 回复

这纯粹是分词器的问题呀,我这边用的也是IKAnalyzer,分词效果如下:
'大家好'---分词结果为:(questionTitle:大家好 questionTitle:大家 questionTitle:好)
'百度公司'---分词结果为:(questionTitle:百度 questionTitle:百 questionTitle:度 questionTitle:公司)

--- 共有 1 条评论 ---
下次错那比如 “百度公司” 我希望 搜索 “度公” 也出来结果 应该怎么分词 以及 搜索 2年前 回复

引用来自“Sailor_os”的评论

这纯粹是分词器的问题呀,我这边用的也是IKAnalyzer,分词效果如下:
'大家好'---分词结果为:(questionTitle:大家好 questionTitle:大家 questionTitle:好)
'百度公司'---分词结果为:(questionTitle:百度 questionTitle:百 questionTitle:度 questionTitle:公司)

那比如 “百度公司” 我希望 搜索 “度公” 也出来结果 应该怎么分词 以及 搜索
--- 共有 4 条评论 ---
下次错回复 @Adairs : 人名 地名 这种 都需要呀 2年前 回复
下次错回复 @Sailor_os : 那如果不改变词库呢 我总不可能每个都去加呀 在类似人名这种 就是这需求 2年前 回复
Sailor_os这个很容易啊,只需要把关键词"度公"添加到IK分词器的字典里(.dic后缀文件),这样就能把"度公"分词出来。如下: '百度公司'---分词结果为:(questionTitle:百度 questionTitle:百 questionTitle:度公 questionTitle:度 questionTitle:公司) 2年前 回复
Adairs这个需求感觉很有意思,之前还没有碰到过,不过你可以用度加空格加公查询出结果 2年前 回复

引用来自“Adairs”的评论

你是打算只有输入大家好才能出结果,输入大家或者家好的时候不出结果吗?
三种都希望有结果
顶部