qq_34322002
qq_34322002
采纳率50%
2016-11-20 13:38

ikanalyser分词及停用词问题。

已采纳

package IkLucene;

import java.io.StringReader;

import org.apache.lucene.analysis.Analyzer;

import org.apache.lucene.analysis.TokenStream;

import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;

import org.wltea.analyzer.lucene.IKAnalyzer;

public class IKAnalyzerTest {

public static void main(String[] args) {

String keyWord = "自动化物流系统,规划,管理流程,效益";

//创建IKAnalyzer中文分词对象

IKAnalyzer analyzer = new IKAnalyzer();

// 使用智能分词

analyzer.setUseSmart(true);

// 打印分词结果

try {

printAnalysisResult(analyzer, keyWord);

} catch (Exception e) {

e.printStackTrace();

}

}

/** 
 * 打印出给定分词器的分词结果 
 *  
 * @param analyzer 
 *            分词器 
 * @param keyWord 
 *            关键词 
 * @throws Exception 
 */  
private static void printAnalysisResult(Analyzer analyzer, String keyWord)  
        throws Exception {  
    System.out.println("["+keyWord+"]分词效果如下");  
    TokenStream tokenStream = analyzer.tokenStream("content",  
            new StringReader(keyWord));  
    tokenStream.addAttribute(CharTermAttribute.class);  
    tokenStream.reset(); //新版中需要有这么个reset,不可遗漏!
    while (tokenStream.incrementToken()) {  
        CharTermAttribute charTermAttribute = tokenStream  
                .getAttribute(CharTermAttribute.class);  
        System.out.println(charTermAttribute.toString());  

    }  
}  

}

上面代码中keyword不管怎么变,结果却都是一样的。求帮忙看看错哪了?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • dabocaiqq dabocaiqq 5年前
    点赞 评论 复制链接分享
  • qq_34334486 qq_34334486 2年前

    我用了你的代码测试了一下没有问题

    点赞 评论 复制链接分享

相关推荐