如何在lucene搜索中突出显示文本

时间:2011-12-16 06:13:59

标签: java lucene

我正在使用Lucene搜索文档中的文本。谁能告诉我如何编写突出显示文档中文本的代码?我正在使用下面的代码,但它不起作用。

Analyzer analyzer = new SnowballAnalyzer("English");
File file = new File("/sdcard/index1/");

indexSearcher = new IndexSearcher(indexDir, true);
QueryParser parser = new QueryParser(Version.LUCENE_29,"DIG", analyzer);
Query query = parser.parse(mEdit.getText().toString());
ScoreDoc[] hits = indexSearcher.search(query, null, 1000).scoreDocs;
assertEquals(hits.length, "Description");
int itemCount = hits.length;
if (itemCount != 0) {
for (int i = 0; i < itemCount; i++) {
objSearchResult = new SearchResults();
Document hitDoc = indexSearcher.doc(hits[i].doc);
og.i("TestAndroidLuceneActivity", "Lucene: "
hitDoc.get("Description"));

我可以显示我要搜索的文字,并显示文件。但我无法在文件中突出显示匹配。

1 个答案:

答案 0 :(得分:1)

我不认为它的运作方式。 Lucene在搜索结果的文本中突出显示单词。

这可以帮助http://lucene.apache.org/java/2_9_1/api/contrib-highlighter/index.html