String SearchText = request.getParameter(
"txtsearch").toString();
TermQuery query = new TermQuery(new Term("f",
SearchText));
QueryScorer scorer = new QueryScorer(query);
SimpleHTMLFormatter formatter = new SimpleHTMLFormatter(
"<span class=\"highlight\">", "</span>");
org.apache.lucene.search.highlight.Highlighter highlighter = new org.apache.lucene.search.highlight.Highlighter(
formatter, scorer);
Fragmenter fragmenter = new SimpleFragmenter(
result.length());
highlighter.setTextFragmenter(fragmenter);
TokenStream tokenStream = new SnowballAnalyzer(
"English").tokenStream("f",
new StringReader(result));
String result1 = highlighter.getBestFragments(
tokenStream, result, 5, "...");
if (result1.length() == 0) {
result1 = result;
}
finalhtml = "<html>" + "<style>\n"
+ ".highlight{\n"
+ " background: yellow;\n" + "}\n"
+ "</style>" + "<body>" + result1
+ "</body></html>";
これは私の Lucene Highlighting Code です。結果は私のHtmlであり、Searchtextは動的なテキスト検索です私のコードをチェックしてくださいどこが間違っていますかいくつかの選択された単語は税金、デリー、コルカッタなどのハイライトですどこが間違っているのかわかりません助けてください