2015-04-05 42 views
-1

這裏是Lucene library類,我想利用.. 優勢(利用),但我不知道如何使用/實現該庫在Java中..印尼施特默爾使用Lucene

例子: 我有字符串數組>> menjadikan,menjawab,penerbangan

你能幫我創建這樣一個數組的Java?

+0

我只知道..我很高興你給我一個警告並解決問題。我會記住的。 – Lita 2015-04-06 23:38:44

回答

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); 

警告:上面的代碼沒有進行測試。

+0

請解釋downvote。 – 2015-04-06 00:40:50

+0

我沒有downvote,但是:你提供的StemFilter用法看起來很不尋常,除非在特殊情況下,它不是非常有用。這個問題對我來說很不明確,所以不確定它是否合適。另外,通過問題中給出的例子來判斷,你的'stemmer.stem'調用可能應該把'stemDerviational'設置爲'true'。儘管如此,不要認爲任何這種情況都可能導致失望。他們可能更有可能因爲回答他們認爲應該被關閉的問題而低估。 – femtoRgon 2015-04-06 06:00:15