- 浏览: 269770 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (195)
- EXT学习 (2)
- hibernate (3)
- drools (1)
- TDD测试驱动开发 (3)
- js (7)
- php (3)
- appfuse (2)
- css (5)
- 站长文库 (15)
- flex (6)
- lucene (43)
- 业务建模 (1)
- Pentaho Report Designer (1)
- 代码质量 (10)
- webservice (2)
- 美工 (3)
- dot net (7)
- 人生 (5)
- 方法论 (3)
- html (4)
- 需求管理 (2)
- 资源分享 (2)
- JAVA (6)
- IDE--intelij文章收集 (5)
- 爬虫学习 (1)
- air (2)
- json转换 (1)
- Linux (2)
- C C++ (1)
- mysql word export 导出 (1)
- avast windows server 2003 (3)
- Linux yum (1)
- flash as3 actionscript 错误码 参考 (1)
- actionscript (1)
- 快速开发 (2)
- ios (0)
- erLang (1)
- 手机开发 (1)
- mysql (1)
- 苹果 MacOs (1)
最新评论
-
cuidongdong1234:
有没有源码分析呀?
初步了解jackson -
ieblaze:
您好!我测试了下 ,启动不成警告: Could not get ...
Embed Tomcat 开发,调试项目 -
Feegle7:
楼主,你这个ppt太花了,估计,大家根本没心思看内容了
drools的学习总结 -
filix:
zhoche2008 写道本来写得挺好的。非要搞一些PPT动画 ...
drools的学习总结 -
zhoche2008:
这PPT真耗资源,服了
drools的学习总结
我现在测试用的Lucene版本是lucene-2.4.0,它已经能够支持中文分词,但它是采用一元分词(逐字拆分)的方法,即把每一个汉字当作是一个词,这样会使建立的索引非常庞大,会影响查询效率.所以大多运用lucene的朋友,都会考虑使用其它的中文分词包,这里我就介绍最为常用的"庖丁解牛"分词包,当然它也是一个值得推荐的中文分词包.
本文主要讲解Lucene如何整合"庖丁解牛"分词包,在整合前,还是先通过一个实例演示一下Lucene自带的中文分词器的分词效果.
package gzu.lyq.luceneAnalyzer;
import java.io.StringReader;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.Token;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
//测试Lucene自带的中文分词器
public class LuceneAnalyzer {
public static void main(String[] args) throws Exception {
//StandardAnalyzer: 一元分词
Analyzer analyzer = new StandardAnalyzer();
String indexStr = "我的QQ号码是38334641";
StringReader reader = new StringReader(indexStr);
TokenStream ts = analyzer.tokenStream(indexStr, reader);
Token t = ts.next();
while (t != null) {
System.out.print(t.termText()+" ");
t = ts.next();
}
}
}
分词结果:我 的 qq 号 码 是 38334641
通过上面的例子就会发现,Lucene自带分词器是将中文逐字拆分的,这是最为原始的分词方法,现在大都不采用.
下面进入主题,来讲解Lucene和"庖丁解牛"中文分词包的整合.
"庖丁解牛"的下载地址是http://code.google.com/p/paoding/downloads/list,下载好后解压,我解压在E:\paoding2_0_4,进入该目录,首先将paoding-analysis.jar拷贝到项目的WEB-INF/lib目录;接着需要设置环境变量PAODING_DIC_HOME,变量名:PAODING_DIC_HOME 变量值:E:\paoding2_0_4\dic 第三步将E:\paoding2_0_4\src目录下的paoding-dic-home.properties属性文件拷贝到项目的src目录下,添加一行paoding.dic.home=E:/paoding2_0_4/dic 好了,到这里,已经完成了Lucene和"庖丁解牛"的整合,下面写个例子来测试一下.
package gzu.lyq.luceneAnalyzer;
import java.io.StringReader;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.Token;
import org.apache.lucene.analysis.TokenStream;
import net.paoding.analysis.analyzer.PaodingAnalyzer;
//测试"庖丁解牛"中文分词器的分词效果
public class PaodingAnalyzer {
public static void main(String[] args) throws Exception {
Analyzer analyzer = new PaodingAnalyzer();
String indexStr = "我的QQ号码是38334641";
StringReader reader = new StringReader(indexStr);
TokenStream ts = analyzer.tokenStream(indexStr, reader);
Token t = ts.next();
while (t != null) {
System.out.print(t.termText()+" ");
t = ts.next();
}
}
}
分词结果:我的 qq 号码 38334641
如果把indexStr换成是"中华人民共和国万岁" ,那么分词结果为:
中华 华人 人民 共和 共和国 万岁
很明显,它的分词效果要比Lucene自带的中文分词器的效果好的多.
发表评论
-
Lucene-2.2.0 源代码阅读学习(40)
2009-06-04 14:37 1199关于Lucene检索结果的排序问题。 已经知道,Luce ... -
Lucene-2.2.0 源代码阅读学习(39)
2009-06-04 14:35 888关于Lucene得分的计算。 在IndexSearche ... -
Lucene-2.2.0 源代码阅读学习(38)
2009-06-04 14:34 1481关于QueryParser。 QueryPars ... -
Lucene-2.2.0 源代码阅读学习(37)
2009-06-04 14:32 961关于MultiTermQuery查询。 ... -
Lucene-2.2.0 源代码阅读学习(36)
2009-06-04 14:23 1040关于MultiTermQuery查询。 ... -
Lucene-2.2.0 源代码阅读学习(35)
2009-06-04 14:22 750关于MultiPhraseQuery(多短语查询)。 Mul ... -
Lucene-2.2.0 源代码阅读学习(34)
2009-06-04 14:21 1109关于PhraseQuery。 PhraseQuery查询是将 ... -
Lucene-2.2.0 源代码阅读学习(33)
2009-06-04 14:20 800关于范围查询RangeQuery ... -
Lucene-2.2.0 源代码阅读学习(32)
2009-06-04 14:18 1112关于SpanQuery(跨度搜索),它是Query的子类,但是 ... -
Lucene-2.2.0 源代码阅读学习(31)
2009-06-04 14:15 1063关于前缀查询PrefixQuery(前缀查询)。 准备工作就 ... -
Lucene-2.2.0 源代码阅读学习(30)
2009-06-04 14:14 853关于Query的学习。 主要使用TermQuery和Bool ... -
Lucene-2.2.0 源代码阅读学习(29)
2009-06-04 14:12 1039关于IndexSearcher检索器。 ... -
Lucene-2.2.0 源代码阅读学习(28)
2009-06-04 14:09 928关于检索的核心IndexSearcher类。 IndexSe ... -
Lucene-2.2.0 源代码阅读学习(27)
2009-06-04 14:07 863关于Lucene的检索(IndexSearcher)的内容 ... -
Lucene-2.2.0 源代码阅读学习(26)
2009-06-04 14:06 1120如果在初始化一个IndexWr ... -
Lucene-2.2.0 源代码阅读学习(25)
2009-06-04 14:03 858复合索引文件格式(.cfs)是如何产生的?从这个问题出发,研究 ... -
Lucene-2.2.0 源代码阅读学习(24)
2009-06-04 13:58 940阅读了这么多代码, ... -
Lucene-2.2.0 源代码阅读学习(23)
2009-06-04 13:55 815通过对DocumentWriter类的writePosting ... -
Lucene-2.2.0 源代码阅读学习(22)
2009-06-04 13:54 864关于FieldInfos类和FieldInfo类。 Fi ... -
Lucene-2.2.0 源代码阅读学习(21)
2009-06-04 13:53 833回到IndexWriter索引器类 ...
相关推荐
《深入剖析:Lucene3与庖丁解牛中文分词器》 在信息技术飞速发展的今天,全文检索和搜索引擎已经成为日常开发中不可或缺的部分。Lucene作为一款强大的全文检索库,被广泛应用于各种信息检索系统中。然而,对于中文...
《Lucene中文分词:庖丁解牛》 在信息技术高速发展的今天,全文搜索引擎已经成为网站内容检索不可或缺的一部分。其中,Apache Lucene作为一个开源的全文检索库,被广泛应用于各种项目中,尤其对于处理中文文本,...
《Lucene中文分词——庖丁解牛》 在自然语言处理领域,中文分词是基础且关键的一环。在Java开发中,Apache Lucene是一个强大的全文搜索引擎库,但默认并不支持中文,这就需要借助第三方分词工具。本文将深入探讨...
《Lucene Analyzer剖析:中文分词的奥秘》 在信息检索领域,Lucene作为一款强大的全文搜索引擎库,被广泛应用于各种系统中。其核心功能之一就是对输入...理解Analyzer的工作原理和特性,是掌握Lucene中文处理的关键。
实例是一个java实例,可直接导入到MyEclipse中...其中是lucene3.0整合了庖丁解牛分词法,添加了高亮显示。因为lucene3.0无法整合paoding-analysis.jar 所以我已经把paoding-analysis中的源码整合进来了避免无法整合问题
总的来说,"庖丁解牛分词法"为Lucene提供了一种高效的中文分词解决方案,显著提升了中文信息检索的准确性和用户体验。通过不断优化和更新,如"paoding-analysis-2.0.4-alpha2"这样的分词工具,使得开发者能够更好地...
由于庖丁官方目前提供可下载尚不支持Lucene 3.0以上版本。因此作者对paoding进行重新编译,使其与最新Lucene 3.0.1版本适用。 Latest paoding 3.0.1 for lucene 3.0.1 使用说明: 先下载2.0.4的版本(h t t p : / ...
标题 "sorlr + tomcat+ 庖丁解牛中文分词 配置文档" 提到的是一个关于在Apache Solr中集成Tomcat服务器,并利用庖丁解牛中文分词工具进行中文处理的配置教程。这个配置过程对于搭建支持中文搜索的Solr环境至关重要。...
本文将深入探讨“Lucene加庖丁解牛测试类”,旨在帮助读者理解Lucene的核心概念,并通过实际的测试类解析,提升对Lucene的运用能力。 首先,我们需要理解“庖丁解牛”的含义。这源自古代典故,意指做事技艺娴熟,能...
"庖丁解牛"是一款专为处理中文文本的分词工具,它的设计目的是为了帮助开发者更高效、准确地对中文文本进行分词处理。在自然语言处理(NLP)领域,分词是基础且关键的一环,它将连续的文本序列切分成具有独立意义的...
可以适用于lucene3.5的庖丁解牛分词器jar包
而"庖丁解牛"则为Lucene提供了针对中文的分词支持,使得开发者可以更好地处理中文文档,提高了搜索的准确性和效率。它的特点包括对中文词汇的精准识别,对新词的动态学习,以及对多音字、成语和网络用语的有效处理。...
最新庖丁解牛分词法的使用demo,支持Lucene3.3、3.4等3.0以上版本,庖丁解牛的分词包为自己编译生成的,之前的2.0的版本不能支持Lucene3.0以上版本,所以需要从svn下载最新的庖丁解牛源码,生成jar文件(我同样已...
《庖丁解牛 源码 for Lucene 2.4》是一份针对开源全文搜索引擎Lucene 2.4版本的深度解析资料。这个压缩包包含的文件名为"paoding-for-lucene-2.4",很可能是针对中文处理的Paoding Lucene库的源代码分析或扩展。...
Paoding's Knives 中文分词具有极 高效率 和 高扩展性 。引入隐喻,采用完全的面向对象设计,构思先进。 高效率:在PIII 1G内存个人机器上,1秒 可准确分词 100万 汉字。 采用基于 不限制个数 的词典文件对文章...
一直找不到适合lucene-35以上的庖丁解牛jar包,搞了半天总于生成好了jar包,在lucene-35中运行没问题
总的来说,"lucene6.6+拼音分词+ik中文分词包"的组合提供了一套完整的中文分词解决方案。通过灵活运用这些工具,开发者可以在Lucene中实现高效的中文搜索,同时兼顾拼音搜索,满足多样化的搜索需求。对于Java开发者...
来自“猎图网 www.richmap.cn”基于IKAnalyzer分词算法的准商业化Lucene中文分词器。 1. 正向全切分算法,42万汉字字符/每秒的处理能力(IBM ThinkPad 酷睿I 1.6G 1G内存 WinXP) 2. 对数量词、地名、路名的...
资源为庖丁解牛分词法的最新源码以及生成的jar包,支持最新的Lucene3.4以及Lucene3.0以上版本。Jar包为本地生成,大家也可以到SVN上检出自己生成,另外庖丁解牛分词法的使用Demo我会接下来上传一份,欢迎分享。
《使用Lucene最新版与庖丁解牛方法构建搜索引擎》 在信息技术日新月异的今天,搜索引擎已经成为了我们获取信息的重要工具。Apache Lucene是一个高性能、全文本搜索库,被广泛应用于各种搜索引擎的开发中。本文将...