lucene2.4集成几种中文分词实例代码
2009-11-11 15:08
477 查看
转载书客网www.8211.cn
原地址:http://www.8211.cn/repository/list_2651.html
package com.test;
import java.io.Reader;
import java.io.StringReader;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.StopFilter;
import org.apache.lucene.analysis.Token;
import org.apache.lucene.analysis.TokenFilter;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.cjk.CJKAnalyzer;
import org.apache.lucene.analysis.cn.ChineseAnalyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.mira.lucene.analysis.IK_CAnalyzer;
import org.mira.lucene.analysis.MIK_CAnalyzer;
public class All_Test {
private static String string = "书客网www.8211.cn计算机电子文档分享平台
";
public static void Standard_Analyzer(String str) throws Exception{
Analyzer analyzer = new StandardAnalyzer();
Reader r = new StringReader(str);
StopFilter sf = (StopFilter) analyzer.tokenStream("", r);
System.out.println("=====StandardAnalyzer====");
System.out.println("分析方法:默认没有词只有字(一元分词)");
Token t;
while ((t = sf.next()) != null) {
System.out.println(t.termText());
}
}
public static void CJK_Analyzer(String str) throws Exception{
Analyzer analyzer = new CJKAnalyzer();
Reader r = new StringReader(str);
StopFilter sf = (StopFilter) analyzer.tokenStream("", r);
System.out.println("=====CJKAnalyzer====");
System.out.println("分析方法:交叉双字分割(二元分词)");
Token t;
while ((t = sf.next()) != null) {
System.out.println(t.termText());
}
}
public static void Chiniese_Analyzer(String str) throws Exception{
Analyzer analyzer = new ChineseAnalyzer();
Reader r = new StringReader(str);
TokenFilter tf = (TokenFilter) analyzer.tokenStream("", r);
System.out.println("=====chinese analyzer====");
System.out.println("分析方法:基本等同StandardAnalyzer(一元分词)");
Token t;
while ((t = tf.next()) != null) {
System.out.println(t.termText());
}
}
public static void ik_CAnalyzer(String str) throws Exception{
Analyzer analyzer = new MIK_CAnalyzer();
// Analyzer analyzer = new IK_CAnalyzer();
Reader r = new StringReader(str);
TokenStream ts = (TokenStream)analyzer.tokenStream("", r);
System.out.println("=====IK_CAnalyzer====");
System.out.println("分析方法:字典分词,正反双向搜索");
Token t;
while ((t = ts.next()) != null) {
System.out.println(t.termText());
}
}
public static void main(String[] args) throws Exception{
String str = string;
System.out.println("我们测试的字符串是:"+str);
Standard_Analyzer(str);
CJK_Analyzer(str);
Chiniese_Analyzer(str);
ik_CAnalyzer(str);
}
}
lucene2.4集成几种分词实例
运行结果如下:
我们测试的字符串是:书客网www.8211.cn计算机电子文档分享平台
=====StandardAnalyzer====
分析方法:默认没有词只有字(一元分词)
书
客
网
www.8211.cn
计
算
机
电
子
文
档
分
享
平
台
=====CJKAnalyzer====
分析方法:交叉双字分割(二元分词)
书客
客网
8211
cn
计算
算机
机电
电子
子文
文档
档分
分享
享平
平台
=====chinese analyzer====
分析方法:基本等同StandardAnalyzer(一元分词)
书
客
网
www
cn
计
算
机
电
子
文
档
分
享
平
台
=====IK_CAnalyzer====
分析方法:字典分词,正反双向搜索
书客网
www
8211
cn
计算机
机电
电子
文档
分享
平台
原地址:http://www.8211.cn/repository/list_2651.html
package com.test;
import java.io.Reader;
import java.io.StringReader;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.StopFilter;
import org.apache.lucene.analysis.Token;
import org.apache.lucene.analysis.TokenFilter;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.cjk.CJKAnalyzer;
import org.apache.lucene.analysis.cn.ChineseAnalyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.mira.lucene.analysis.IK_CAnalyzer;
import org.mira.lucene.analysis.MIK_CAnalyzer;
public class All_Test {
private static String string = "书客网www.8211.cn计算机电子文档分享平台
";
public static void Standard_Analyzer(String str) throws Exception{
Analyzer analyzer = new StandardAnalyzer();
Reader r = new StringReader(str);
StopFilter sf = (StopFilter) analyzer.tokenStream("", r);
System.out.println("=====StandardAnalyzer====");
System.out.println("分析方法:默认没有词只有字(一元分词)");
Token t;
while ((t = sf.next()) != null) {
System.out.println(t.termText());
}
}
public static void CJK_Analyzer(String str) throws Exception{
Analyzer analyzer = new CJKAnalyzer();
Reader r = new StringReader(str);
StopFilter sf = (StopFilter) analyzer.tokenStream("", r);
System.out.println("=====CJKAnalyzer====");
System.out.println("分析方法:交叉双字分割(二元分词)");
Token t;
while ((t = sf.next()) != null) {
System.out.println(t.termText());
}
}
public static void Chiniese_Analyzer(String str) throws Exception{
Analyzer analyzer = new ChineseAnalyzer();
Reader r = new StringReader(str);
TokenFilter tf = (TokenFilter) analyzer.tokenStream("", r);
System.out.println("=====chinese analyzer====");
System.out.println("分析方法:基本等同StandardAnalyzer(一元分词)");
Token t;
while ((t = tf.next()) != null) {
System.out.println(t.termText());
}
}
public static void ik_CAnalyzer(String str) throws Exception{
Analyzer analyzer = new MIK_CAnalyzer();
// Analyzer analyzer = new IK_CAnalyzer();
Reader r = new StringReader(str);
TokenStream ts = (TokenStream)analyzer.tokenStream("", r);
System.out.println("=====IK_CAnalyzer====");
System.out.println("分析方法:字典分词,正反双向搜索");
Token t;
while ((t = ts.next()) != null) {
System.out.println(t.termText());
}
}
public static void main(String[] args) throws Exception{
String str = string;
System.out.println("我们测试的字符串是:"+str);
Standard_Analyzer(str);
CJK_Analyzer(str);
Chiniese_Analyzer(str);
ik_CAnalyzer(str);
}
}
lucene2.4集成几种分词实例
运行结果如下:
我们测试的字符串是:书客网www.8211.cn计算机电子文档分享平台
=====StandardAnalyzer====
分析方法:默认没有词只有字(一元分词)
书
客
网
www.8211.cn
计
算
机
电
子
文
档
分
享
平
台
=====CJKAnalyzer====
分析方法:交叉双字分割(二元分词)
书客
客网
8211
cn
计算
算机
机电
电子
子文
文档
档分
分享
享平
平台
=====chinese analyzer====
分析方法:基本等同StandardAnalyzer(一元分词)
书
客
网
www
cn
计
算
机
电
子
文
档
分
享
平
台
=====IK_CAnalyzer====
分析方法:字典分词,正反双向搜索
书客网
www
8211
cn
计算机
机电
电子
文档
分享
平台
相关文章推荐
- Lucene3.3、Lucene3.4中文分词——庖丁解牛分词实例
- Bag标签之中的一个行代码实行中文分词实例2
- Bag标签之中的一个行代码实行中文分词实例1
- Bag标签之一行代码实行中文分词实例3
- lucene中文分词搜索的核心代码
- Bag标签之中的一个行代码实行中文分词实例3
- lucene 4.3 中文分词代码演示
- java中文分词之正向最大匹配法实例代码
- Lucene关于几种中文分词的总结
- Lucene开发实例教程:Lucene中文分词、分页查询、高亮显示
- lucene + IKAnalyzer 中文分词及索引,简单实例
- Bag标签之一行代码实行中文分词实例1
- Bag标签之一行代码实行中文分词实例2
- Lucene3.3、Lucene3.4中文分词——庖丁解牛分词实例
- mmseg4j 中文分词简单代码实例
- lucene集成IK实现中文分词检索
- lucene集成IK实现中文分词检索
- 分布式搜索elasticsearch 中文分词集成
- 【Lucene】Apache Lucene全文检索引擎架构之中文分词和高亮显示
- solr5.5.3 集成mmseg4j 中文分词(二)