论坛首页 Java企业应用论坛

lucene2.9 中文分词学习和SmartChineseAnalyzer的用法

浏览 3747 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-05-28  
lucene2.9的发布,增加了中文分词这个强大的功能.
  以下就是这三个类的用法ChineseAnalyzer,CJKAnalyzer,SmartChineseAnalyzer
这三个类的结果如下:
Example phrase: "我是中国人"
ChineseAnalyzer: 我-是-中-国-人
CJKAnalyzer: 我是-是中-中国-国人
SmartChineseAnalyzer: 我-是-中国-人

呵呵,看到这是不是很棒呢?今天自己写了一个中文分词的测试法,是关于SmartChineseAnalyzer的用法

要用到此方法,要导入包,当然我以为只要下载了lucene-core-2.9.1.jar 就会有的,但是我错了.

所以我特意的提下,不想有的朋友也因为这个浪费不少时间

要用到lucene-analyzers-2.9.1.jar 和  lucene-smartcn-2.9.1.jar 这二个包在contrib\analyzers文件

夹下

代码如下:

public static void main(String[] args) {

        String str = "市委座谈会要求加强改进农村党建工作";
        String st =null;
        StringBuffer sb = new StringBuffer();
       
        StringReader reader = new StringReader(str);

        Analyzer analyzer = new SmartChineseAnalyzer();
        TokenStream ts = analyzer.tokenStream("", reader);
        Token t = null;

        try {
            while ((t = ts.next()) != null) {
   
            st=t.termText();
            if(st.length()>=2){
                System.out.println("##"+st);//判断等于二个字的,如果是一个字就不要了
            }
           
            sb.append(st);
           
            }
            System.out.println(sb);
           
       
       
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
刚开始学习lucene 有志合道者,可以好好交流下.呵呵,共同学习


原文链接:http://www.liuzm.com/article/java/9119.htm
   发表时间:2010-11-05  
你说的smartChineseAnalyze是基于词库分表的吧?
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics