看到很多人做lucene的应用时候都要面临中文分词怎么加的问题,下面介绍一个简单的中文词库,这个词库附带相应的算法,数据结构学过的人看懂没什么问题,只要简单的构造一个对象,就可以分词了,对于不是太大的应用来说,还是相当可行的,点击下载
      该分词库使用很简单,先初试化该类
      ChineseSegmenter seg = ChineseSegmenter.getGBSegmenter();
      然后调用seg.segmentLine("要分词的中文段", " ")//第二个参数为分词之间以什么间隔
     
譬如

 public static void main(String[] args) throws Exception {

      ChineseSegmenter seg 
= ChineseSegmenter.getGBSegmenter();
      System.
out.println(seg.segmentLine("儿童节日"" "));
    
   }
    输出为儿童 节日 儿童节   
    
     下面简要说以下如何加到搜索代码里,
      lucene 建立索引的代码引入的analysis分词法为 WhitespaceAnalyzer
      import org.apache.lucene.analysis.WhitespaceAnalyzer;

  IndexWriter writer = new IndexWriter(Directory, new WhitespaceAnalyzer(),true);

    
public void AddDocument(String Title , String Content , ..)
    {
        Document doc 
= new Document();
        
        ChineseSegmenter cs
= ChineseSegmenter.getGBSegmenter();    //初始化该类
        
            doc.add(Field.Text(
"content", cs.segmentLine(Content, " "))); // 将分好的词写进索引 
    
            doc.add(Field.Text(
"title", cs.segmentLine(Title, " ")));


        
try
        {
            writer.addDocument(doc);
        }
        
catch(IOException e)
        {
            System.
out.println("wrong");
            e.printStackTrace();
        }
    }

        上面建立索引时候为把文章的标题和内容进行断词然后存入了索引, 搜索的时候同样用WhitespaceAnalyzer,
 然后把结果hit中的结果合并就可以了.