无法在JAVA中突出显示Lucecne搜索中的所有文本 String SearchText=request.getParameter( “txtsearch”).toString(); TermQuery query=新TermQuery(新术语(“f”), 搜索文本); QueryScorer scorer=新的QueryScorer(查询); SimpleHTMLFormatter格式化程序=新的SimpleHTMLFormatter( "", ""); org.apache.lucene.search.Highlighter Highlighter=新org.apache.lucene.search.Highlighter.Highlighter( 格式化程序、记分器); Fragmenter Fragmenter=新的SimpleFragmenter( 结果:长度(); 荧光灯。setTextFragmenter(fragmenter); TokenStream TokenStream=新的雪球分析仪( “英语”)。代币流(“f”, 新StringReader(结果)); 字符串result1=highlighter.getBestFragments( 令牌流,结果,5,“…”; if(result1.length()=0){ 结果1=结果; } finalhtml=“”+“\n” +“.highlight{\n” +背景:黄色;\n“+”}\n +“”+“”+结果1 + "";
这是我的Lucene突出显示代码。结果是我的Html和搜索文本是我的文本搜索,这是动态的,请检查我的代码哪里做错了一些选定的词是像税务,德里,加尔各答等我不知道哪里做错了请帮助我无法在JAVA中突出显示Lucecne搜索中的所有文本 String SearchText=request.getParameter( “txtsearch”).toString(); TermQuery query=新TermQuery(新术语(“f”), 搜索文本); QueryScorer scorer=新的QueryScorer(查询); SimpleHTMLFormatter格式化程序=新的SimpleHTMLFormatter( "", ""); org.apache.lucene.search.Highlighter Highlighter=新org.apache.lucene.search.Highlighter.Highlighter( 格式化程序、记分器); Fragmenter Fragmenter=新的SimpleFragmenter( 结果:长度(); 荧光灯。setTextFragmenter(fragmenter); TokenStream TokenStream=新的雪球分析仪( “英语”)。代币流(“f”, 新StringReader(结果)); 字符串result1=highlighter.getBestFragments( 令牌流,结果,5,“…”; if(result1.length()=0){ 结果1=结果; } finalhtml=“”+“\n” +“.highlight{\n” +背景:黄色;\n“+”}\n +“”+“”+结果1 + "";,java,jsp,Java,Jsp,这是我的Lucene突出显示代码。结果是我的Html和搜索文本是我的文本搜索,这是动态的,请检查我的代码哪里做错了一些选定的词是像税务,德里,加尔各答等我不知道哪里做错了请帮助我 String SearchText = request.getParameter( "txtsearch").toString(); TermQuery query = new TermQuery(new Term("f",
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>";