首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

lucene模模糊糊检索功能

2012-09-29 
lucene模糊检索功能1、通配符方式WildcardQuery querynew WildcardQuery(new Term(“content”,”?qq*”))*

lucene模糊检索功能
1、通配符方式
WildcardQuery query=new WildcardQuery(new Term(“content”,”?qq*”));
* 表示0到多个字符
? 表示一个单一的字符

2、模糊搜索—FuzzyQuery
使用的算法为levenshtein算法,在比较两个字符串时,将动作分为3种:

l) 加一个字母

2) 删一个字母

3) 改变一个字母

FuzzyQuery query=new FuzzyQuery(new Term(“content”,”work”));

public FuzzyQuery(Term term)

public FuzzyQuery(Term term,float minimumSimilarity)throws IllegalArgumentException

public FuzzyQuery(Term term,float minimumSimilarity,int prefixLength)throws IllegalArgumentException

其中minimumSimilarity为最小相似度,越小则文档的数量越多。默认为0.5.其值必须<1.0

FuzzyQuery query=new FuzzyQuery(new Term(“content”,”work”),0.1f);

其中prefixLength表示要有多少个前缀字母必须完全匹配

FuzzyQuery query=new FuzzyQuery(new Term(“content”,”work”),0.1f,1);

热点排行