/*
*param 分词
*/
public List getname(String param) throws IOException{
//分词(庖丁解牛分词法)
Analyzer ika = new PaodingAnalyzer();
List<String> keys = new ArrayList<String>();
TokenStream ts = null;
try{
Reader r = new StringReader(param);
ts = ika.tokenStream("TestField", r);
TermAttribute termAtt = (TermAttribute) ts.getAttribute(TermAttribute.class);
TypeAttribute typeAtt = (TypeAttribute) ts.getAttribute(TypeAttribute.class);
String key = null;
while (ts.incrementToken()) {
if ("word".equals(typeAtt.type())) {
key = termAtt.term();
if (key.length() >= 2) {
keys.add(key);
}
}
}
}catch(IOException e){
e.printStackTrace();
} finally {
if (ts != null) {
ts.close();
}
}
Map<String, Integer> keyMap = new HashMap<String, Integer>();
Integer $ = null;
//计算每个词出现的次数
for (String key : keys) {
keyMap.put(key, ($ = keyMap.get(key)) == null ? 1 : $ + 1);
}
List<Map.Entry<String, Integer>> keyList = new ArrayList<Map.Entry<String, Integer>>(keyMap.entrySet());
//进行排序
Collections.sort(keyList, new Comparator<Map.Entry<String, Integer>>() {
public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
return (o2.getValue() - o1.getValue());
}
});
//取出关键词
String id = null;
String str = "";
List list = new ArrayList();
if(keyList.size() >0){
for (int i = 0;i < keyList.size(); i++) {
id = keyList.get(i).toString();
String[] strs = id.split("\\=");
str = strs[0];
list.add(strs[0]);
System.out.println("id:"+id);
}
}
return list;
}
分享到:
相关推荐
支持lucene3的庖丁解牛分词器和字典,可直接调用
庖丁解牛(很好的分词效率) 在做站内全文检索时创建索引时比较快,而且感觉效果比JE要好一些。。
支持中文的庖丁解牛,庖丁分词,找了好久才找到的希望对你有帮助。
Lucene加庖丁解牛测试类Lucene加庖丁解牛测试类
由于庖丁官方目前提供可下载尚不支持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 : / ...
Lucene 庖丁解牛分词法 , 能够使用它解决中文分词问题。
实例是一个java实例,可直接导入到MyEclipse中...其中是lucene3.0整合了庖丁解牛分词法,添加了高亮显示。因为lucene3.0无法整合paoding-analysis.jar 所以我已经把paoding-analysis中的源码整合进来了避免无法整合问题
Lucene IK Analyzer 3.0 Lucene的IK Analyzer 3.0 中文分词器 Lucene IK Analyzer 3.0 Lucene的IK Analyzer 3.0 中文分词器Lucene IK Analyzer 3.0 Lucene的IK Analyzer 3.0 中文分词器
可以适用于lucene3.5的庖丁解牛分词器jar包
Lucene4.7+IK Analyzer中文分词入门教程
最新庖丁解牛分词法的使用demo,支持Lucene3.3、3.4等3.0以上版本,庖丁解牛的分词包为自己编译生成的,之前的2.0的版本不能支持Lucene3.0以上版本,所以需要从svn下载最新的庖丁解牛源码,生成jar文件(我同样已...
庖丁解牛 源码 for Lucene 2.4
lucene3.5 IKAnalyzer3.2.5 实例中文分词通过,目前在网上找的lucene 和IKAnalyzer 的最新版本测试通过。内含:示例代码,以及最新jar包。 lucene lucene3.5 IKAnalyzer IKAnalyzer3.2.5 jar 中文 分词
庖丁解牛,Lucene分词器,很难得的资源。
导入: import net.teamhot.lucene.ThesaurusAnalyzer; import org.apache.lucene.analysis.Analyzer; 实例化: Analyzer analyzer = new ThesaurusAnalyzer();
Paoding's Knives 中文分词具有极 高效率 和 高扩展性 。引入隐喻,采用完全的面向对象设计,构思先进。 高效率:在PIII 1G内存个人机器上,1秒 可准确分词 100万 汉字。 采用基于 不限制个数 的词典文件对文章...
利用IKAnalyzer结合LUCENE.4.9进行中文分词的高亮显示。
自己做的一个中文分词,可以用在MONO下。根据IKAnalyzer Java版本移植到C#。采用了Powercollection类库。
lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮