lucene1.3-final完成支持中文的切词和检索了

来源:互联网 发布:淘宝销售属性怎么设置 编辑:程序博客网 时间:2024/05/22 06:18

screen.width*.65)this.width=screen.width*.65" border=0 name=pic_3256>

作者:lotus(xuhb@ah163.com)

网上有许多lucene的材料,中文材料大家看的都是车东的那篇(http://www.chedong.com/tech/lucene.html),而大家在网上讨论最多的是中文的全文检索,而对中文的全文检索最有影响力的文章,还是车东写的那篇weblucene(http://www.chedong.com/tech/weblucene.html),但那些都是lucene1.2版本的事,现在不同了,lucene1.3-final据称完全支持中文的全文检索了。

因为在lucene1.3-final.zip包中的changes.txt中的第五项描述如下:

5. Fix StandardTokenizer's handling of CJK characters (Chinese,
    Japanese and Korean ideograms).  Previously contiguous sequences
    were combined in a single token, which is not very useful.  Now
    each ideogram generates a separate token, which is more useful.

这说明lucene1.3-final可以检索中日韩等表意文字了。

测试一下:

测试环境:windows 2000 pro,jdk1.3.1或以上版本

1、下载lucene-1.3-final.zip。

2、解压lucene-1.3-final.zip,并将其中的lucene-1.3-final.jar和lucene-demos-1.3-final.jar加入到系统的classpath中。

3、建一个目录,并将一些html或txt文件(文件内容要中文的!)拷入到这个目录中,作为全文检索的材料。如:建一个目录d:/lucenetest/index,在其中拷入一些中文内容的文件,其中也可以有多级子目录的。

OK,环境准备好了,可以试验了!

4、进入dos模式,输入命令:java org.apache.lucene.demo.IndexFiles d:/lucenetest/index

如:c:/>java org.apache.lucene.demo.IndexFiles d:/lucenetest/index 回车,这时会索引d:/lucenetest/index目录下的所有文件,包括子目录中的文件,并将索引文件写入:c:/index目录中(自动创建的,根据你的dos符起始路径,将在其下建index目录)。

好,索引建完了,下面试验检索。

5、输入命令:java org.apache.lucene.demo.SearchFiles

如:c:/>java org.apache.lucene.demo.SearchFiles 回车

Query:在这里输入检索内容,如:“建议最好自己先做一下语法检查”,这么长:)

成功了,结果出来了:

Searching for: "建 议 最 好 自 己 先 做 一 下 语 法 检 查"
1 total matching documents
0. d:/lucenetest/index/学习Lucene的一点心得.txt

测试结果见附图。

可以看出lucene-1.3-final完全支持中文的全文检索了,使用的是单字切分!!

怎么样,不错吧,赶快换lucene-1.3-final吧 :)

 

参考资料:

http://jakarta.apache.org/lucene/docs/gettingstarted.html

原创粉丝点击