Skip to content

Latest commit

 

History

History
63 lines (34 loc) · 2.19 KB

README.md

File metadata and controls

63 lines (34 loc) · 2.19 KB

#Paoding分詞器,基於Lucene4.x

修正了Lucene 4.9版本中已經移除的方法(見http://goo.gl/qg4aKJ) 並重新編譯使其可以在4.9版正確載入執行。

注意!由於我編譯過的Paoding是以Java 7來編譯的,而Lucene 4.9只支援 Java 7u55以上版本,包含Java 8,若要使用於4.7以下版本則需要重新使用Java 6編譯Paoding成jar後方可使用。否則將會出現NoClassDefFoundError: org/apache/lucene/analysis/Token的錯誤。

原作者: http://git.oschina.net/zhzhenqin/paoding-analysis

#Paoding分词器基于Lucene4.x

原项目见 https://code.google.com/p/paoding/

#Paoding Analysis摘要

Paoding's Knives 中文分词具有极 高效率 和 高扩展性 。引入隐喻,采用完全的面向对象设计,构思先进。

高效率:在PIII 1G内存个人机器上,1秒 可准确分词 100万 汉字。

采用基于 不限制个数 的词典文件对文章进行有效切分,使能够将对词汇分类定义。

能够对未知的词汇进行合理解析

用心的贡献,极其能鼓励人

----------------------!

分词示例如下:

TokenStream ts = analyzer.tokenStream("text", new StringReader(text));
//添加工具类  注意:以下这些与之前lucene2.x版本不同的地方
CharTermAttribute offAtt = (CharTermAttribute) ts.addAttribute(CharTermAttribute.class);
// 循环打印出分词的结果,及分词出现的位置
while (ts.incrementToken()) {
    System.out.print(offAtt.toString() + "\t");
}

#编译说明

项目默认可以使用Maven直接编译.

如果使用Ant,可把依赖的lib放入 {pro_workspace}/target/dependency/ 下. 然后使用ant可以直接编译. 编译的结果存放在 {pro_workspace}/target/dist/{version}/ 下

可使用Maven的 copy-dependencies 命令直接copy依赖到{pro_workspace}/target/dependency/,然后使用ant编译

mvn dependency:copy-dependencies

#Solr4.x使用说明

Solr 4.x以上可以直接配置Lucene的Analyzer. 配置如:

<fieldType name="text_general" class="solr.TextField">
  <analyzer class="net.paoding.analysis.analyzer.PaodingAnalyzer" />
</fieldType>