印度尼西亚Stemmer使用Lucene

时间:2015-04-05 04:36:07

标签: java lucene stemming

这是来自Lucene library的课程,我想利用(使用)... 但我不知道如何在Java中使用/实现该库..

实施例: 我有字符串数组>> menjadikan,menjawab,penerbangan

你能用Java创建这样一个数组吗?

1 个答案:

答案 0 :(得分:0)

这是一个示例代码片段(基于Lucene测试代码),它使用印尼语词干分析器创建Lucene分析器。

import java.io.IOException;
import java.io.Reader;

import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.Tokenizer;
import org.apache.lucene.analysis.core.KeywordTokenizer;


  ...
  Analyzer a = new Analyzer() {
    @Override
    public TokenStreamComponents createComponents(
               String fieldName, Reader reader) {
      Tokenizer tokenizer = new KeywordTokenizer(reader);
      return new TokenStreamComponents(tokenizer, 
                 new IndonesianStemFilter(tokenizer));
    }
  };

您也可以直接实例化IndonesianStemmer,并在单个字词上调用stem方法。例如;

  IndonesianStemmer stemmer = new IndonesianStemmer();
  ...
  char[] chars = "menjadikan".toCharArray();
  int len = stemmer.stem(chars, chars.length, false);
  String stem = new String(chars, 0, len);

警告:上述代码未经过测试。