SpellChecker是Lucene的一个新组件,至少对我这个一年内没在动Lucene的人来说。
群里有人讨论SpellChecker,便去研究了一下,还不是很难。
SpellChecker就纠错不错,但也有人用来做相关搜索,但效果应该不太理想。
好,言归正传。先来个实例:
第一步导入错别字库:
第二步就是导出错别字列表
= =!,有点恶心。不过还是看一下输出结果。
忘了介绍一个文件就是错别字文件,可以用索引创建也可以用文本创建,咱们先来简单的也就是
大家看到的PlainTextDictionary,其中spell.txt的内容如下
可能大家会输入明朝会怎么样,答案是没结果,因为
将LevensteinDistance是默认的,要想输入明朝也提示出来,那么改为JaroWinklerDistance
JaroWinklerDistance是有个类似相似度的参数,默认是0.7,可以通过setThreshold,进行设置。
那么总结一下总共三个元素SpellChecker,StringDistance,Dictionary
StringDistance接口的实现类有JaroWinklerDistance和LevensteinDistance
Disctionary接口的实现类有LuceneDictionary和PlainTextDictionary
JaroWinklerDistance主要可以用来相关搜索
LevensteinDistance用来纠错
PlainTextDictionary文本格式
LuceneDictionary索引格式
LuceneDictionary的结构如下
IndexStructure
|
Example
|
word
|
kings
|
gram3
|
kin, ing, ngs
|
gram4
|
king, ings
|
start3
|
kin
|
start4
|
king
|
end3
|
ngs
|
end4
|
ings
|
应用的话就讲到这里,其中的算法,我们在下篇再讲
分享到:
相关推荐
Lucene SpellChecker for Lucene 3.0.2
jar包,亲测可用
java运行依赖jar包
Lucene.Net 2.3.1开发介绍 —— 二、分词(四),这是一个系列的文档,太多了,只好分开
lucene-spellchecker-3.3.0.jar lucene-stempel-3.3.0.jar lucene-test-framework-3.3.0.jar lucene-wordnet-3.3.0.jar lucene-xml-query-parser-3.3.0.jar maven-ant-tasks-2.1.1.jar xercesImpl-2.9.1-patched-...
lucene-analyzers.jar lucene-core.jar lucene-highlighter.jar lucene-queries.jar lucene-snowball.jar lucene-spellchecker.jar
Lucene之删除索引 Lucene之删除索引 Lucene之删除索引 http://blog.csdn.net/nupt123456789/article/details/10666105
lucene实例lucene实例lucene实例lucene实例lucene实例lucene实例lucene实例lucene实例lucene实例
开发搜索引擎 Lucene Heritrix 随书光盘
lucene,lucene教程,lucene讲解。 为了对文档进行索引,Lucene 提供了五个基础的类 public class IndexWriter org.apache.lucene.index.IndexWriter public abstract class Directory org.apache.lucene.store....
本书深入浅出地介绍了Lucene——一个开源的使用Java语言编写的全文搜索引擎开发包。它通过浅显的语言、大量的图注、丰富的代码示例,以及清晰的结构为读者呈现出作为优秀开源项目的Lucene 所体现的强大功能。全书共...
NULL 博文链接:https://zzc1684.iteye.com/blog/2181330
lucene3.0 lucene3.0 lucene3.0 lucene3.0 lucene3.0
最后,虽然Lucene使用Java语言写成,但是开放源代码社区的程序员正在不懈的将之使用各种传统语言实现(例如.net framework[14]),在遵守Lucene索引文件格式的基础上,使得Lucene能够运行在各种各样的平台上,系统...
lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习...
基于Java的全文索引检索引擎——Lucene,关于这个分词的自己还是很不懂,希望大家有好地资源一起分享一下
使用其他编程语言访问Lucene Lucene管理和性能调优等内容 最后还提供了三大经典成功案例 为读者展示了一个奇妙的搜索世界 《Lucene实战 第2版 》适合于已具有一定Java编程基本的读者 以及希望能够把强大的搜索...
在一定深度介绍LUCENE的排序算法和打分公式。
Lucene3.0特性Lucene3.0特性
全文检索技术学习(三)——Lucene支持中文分词 - 李阿昀的博客 - CSDN博客首页博客学院下载图文课论坛问答商城活动招聘搜博主文章写博客小程序全文检索技