lucene 的中文精确匹配问题

下次错 发布于 2016/03/01 17:11
阅读 1K+
收藏 0

遇到了个麻烦想了很久

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

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

比如句子  “大家好”

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

该怎么进行查询 

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


加载中
0
Adairs
Adairs
你是打算只有输入大家好才能出结果,输入大家或者家好的时候不出结果吗?
下次错
这三种情况都要出结果 就有点想 word中 搜索的那种效果
0
Sailor_os
Sailor_os

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

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

引用来自“Sailor_os”的评论

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

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

引用来自“Adairs”的评论

你是打算只有输入大家好才能出结果,输入大家或者家好的时候不出结果吗?
三种都希望有结果
0
rz
rz
自己写一个分词器,2个字一分,每次跳过一个字,貌似以前看到过别人这样做
0
henghanan
henghanan
用CJKAnalyzer分词器,即所谓的二元分词
0
徐迎龙
徐迎龙

创建索引时候,针对这个字段,不要用分词.

查询的时候,可以采用WildcardQuery 

0
土豆宝
土豆宝

自定义词

0
下次错
已解决 standard 分词 然后 用parsequery 拼词组
返回顶部
顶部