2011-12-13 1 views
0

は私がlucene highlighter:フラグメントの位置を取得するにはどうしたらいいですか?

Highlighter highlighter = new Highlighter(scorer); 
String[] fragments = highlighter.getBestFragments(stream, fieldContents, fragmentNumber); 

を使用して、すなわちLuceneのハイライターを使用して、いくつかの周囲のテキストと一緒に、関連強調表示の断片を取得するために、しかし、私は代わりに元の内容にこれらのフラグメントへのポインタを得ることができる方法を知っていますか?言い換えれば、これらの断片がどこから始まり、可能であれば終わるかを知る必要があります。

+0

はたぶん、このリンクは助けることができます。http:/ /stackoverflow.com/questions/5549589/highlighting-whole-sentence-in-lucene-net-2-9-2 –

+0

それが助けになるかどうかわからないが、とにかくポインタのおかげで –

答えて

0

代わりにGetBestTextFragmentsメソッドを使用すると、TextFragmentの配列が返されます。これらのプロパティはtextStartPostextEndPosです。

は(彼らはそれらへのアクセスを得るために、いくつかのコードを変更する必要があろう、Lucene.NETにおける内部マークされている私は、JavaのLuceneについてはよく分からない。)

+0

ありがとう。 Java Lucene 3.4.0には 'TextFragment []'を返す 'GetBestTextFragments'メソッドがありますが、' TextFragment'はどの位置情報にもアクセスできません。 Luceneの以前のバージョンではそうだったようですが、なぜこれが変わったのか分かりません。 –

関連する問題