3

lucene を使用してアプリケーションに検索コンポーネントを作成しました。インデックス作成、強調表示など、すべて正常に機能します。SimpleSpanFragmenter メソッドで結果を「fragmentSize」に制限するだけでなく、検索応答として段落を返す必要があります。コードの一部があります。

SimpleHTMLFormatter formatter = new SimpleHTMLFormatter("<span class='highlight'>", "</span>");
QueryScorer scorer = new QueryScorer(query, NodeDocument.TEXT_FIELD);
Highlighter highlighter = new Highlighter(formatter, scorer);
highlighter.setTextFragmenter(new SimpleSpanFragmenter(scorer, MAX_FRAGMENT_LEN));
String excerpt = highlighter.getBestFragment(analyzer, Document.MESSAGE_FIELD, nForumPost.getMessage());

このコードは、256 に設定した "MAX_FRAGMENT_LEN" を返しますが、理想的ではありません。クエリに検索語を含む段落を取得したい。

4

0 に答える 0