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

  • fast2hell

    fast2hell

    16 AĞUSTOS 2006
  • Hey Nadine

    Hey Nadine

    24 Kasım 2006
  • Alexey - servant of Christ

    Alexey - ser

    15 EYLÜL 2007