SORU
14 NİSAN 2010, ÇARŞAMBA


Nasıl Lucene bir TokenStream bir marka alabilmek için?

Tokenizing için Apache Lucene kullanmaya çalışıyorum, ve süreci TokenStream bir Jeton almak için şaşkınım.

En kötüsü de sorumu Adres JavaDocs açıklamalarda bakıyorum.

http://lucene.apache.org/java/3_0_1/api/core/org/apache/lucene/analysis/TokenStream.html#incrementToken()

Nasıl olduysa, AttributeSource kullanılacak, Tokens yerine gerekiyordu. Tamamen kararsızım.

Herkes bir TokenStream simgesi gibi bilgileri almak için nasıl açıklayabilir?

CEVAP
14 NİSAN 2010, ÇARŞAMBA


Evet, biraz kıvrık (iyi ol' yol) göre, ama bir de şunu dene:

TokenStream tokenStream = analyzer.tokenStream(fieldName, reader);
OffsetAttribute offsetAttribute = tokenStream.getAttribute(OffsetAttribute.class);
TermAttribute termAttribute = tokenStream.getAttribute(TermAttribute.class);

while (tokenStream.incrementToken()) {
    int startOffset = offsetAttribute.startOffset();
    int endOffset = offsetAttribute.endOffset();
    String term = termAttribute.term();
}

Düzenleme:yeniyol

Donotello, TermAttribute göre itiraz olmuştur CharTermAttribute iyilik. Jpountz (ve Lucene belgelerine) getAttribute Daha fazla arzu edilir göre.

TokenStream tokenStream = analyzer.tokenStream(fieldName, reader);
OffsetAttribute offsetAttribute = tokenStream.addAttribute(OffsetAttribute.class);
CharTermAttribute charTermAttribute = tokenStream.addAttribute(CharTermAttribute.class);

tokenStream.reset();
while (tokenStream.incrementToken()) {
    int startOffset = offsetAttribute.startOffset();
    int endOffset = offsetAttribute.endOffset();
    String term = charTermAttribute.toString();
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ★ByScrapi★ Designs

    ★ByScrapi�

    27 AĞUSTOS 2013
  • Avast

    Avast

    27 NİSAN 2006
  • EmbarkToHeaven

    EmbarkToHeav

    3 EYLÜL 2007