IKanalyzer分词器分词并且统计词频

Posted anonymoul

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IKanalyzer分词器分词并且统计词频相关的知识,希望对你有一定的参考价值。

 
<dependency>
   <groupId>com.janeluo</groupId>
   <artifactId>ikanalyzer</artifactId>
   <version>2012_u6</version>
</dependency>

首先引入 ikanalyzer相关jar包

 

/**
 * @Description:
 * @Author: lizhang
 * @CreateDate: 2018/7/31 22:35
 * @UpdateDate: 2018/7/31 22:35
 * @Version: 1.0
 */
import org.wltea.analyzer.core.IKSegmenter;
import org.wltea.analyzer.core.Lexeme;

import java.io.IOException;
import java.io.StringReader;
import java.util.*;

public class Test {
    /**
     * 对语句进行分词
     * @param text 语句
     * @return 分词后的集合
     * @throws IOException
     */
    private static Map segment(String text) throws IOException {
        Map<String,Integer> map = new HashMap<String,Integer>();
        StringReader re = new StringReader(text);
    IKSegmenter ik
= new IKSegmenter(re, false);//true 使用smart分词,false使用最小颗粒分词
Lexeme lex; while ((lex = ik.next()) != null) { if(lex.getLexemeText().length()>1){ if(map.containsKey(lex.getLexemeText())){ map.put(lex.getLexemeText(),map.get(lex.getLexemeText())+1); }else{ map.put(lex.getLexemeText(),1); } } } return map; } public static void main(String[] args) throws IOException { Map<String,Integer> map = segment("中国,中国,我爱你"); System.out.println(map.toString()); } }  

 

 输出结果:

技术分享图片

以上是关于IKanalyzer分词器分词并且统计词频的主要内容,如果未能解决你的问题,请参考以下文章

各位大神,lucene分词后,怎么按着词频倒序排列

中文分词工具哪个好用

Python 分词后词频统计

solr7.0.0+IKAnalyzer中文分词器V2012+tomcat9

Solr配置中文分词器IKAnalyzer及增删改查调用

solr 中文分词器IKAnalyzer和拼音分词器pinyin