如何从Lucene Index中提取特定文本?

时间:2012-03-23 18:16:38

标签: lucene apache-tika

我想在lucene索引中添加pdf文件(可能是我做过)。现在我想通过lucene邻近搜索查询提取特定文本。

邻近搜索查询仅返回文件名。

  

But i want to extract all texts within the proximity query range.

示例案例: 检验.pdf: - > “示例文本A xxxxx B. Lucene一直都很棒”

邻近查询是:A B~5

我想提取:xxxxx

我该怎么做......?

提前感谢您的帮助和提示............

此致

SENTHIL SARAVANAN

1 个答案:

答案 0 :(得分:0)

请在索引文件时添加

            doc.add(new Field("contents", result, Field.Store.COMPRESS,
                        Field.Index.ANALYZED,
                        Field.TermVector.WITH_POSITIONS_OFFSETS));

此处doc的类型为org.apache.lucene.document.Document。

搜索文件时,请使用com.java.search.HighlighterUtil.getFragmentsWithHighlightedTerms(Analyzer analyzer,Query query,String fieldName,String fieldContents,int fragmentNumber,int fragmentSize)作为片段。