是否可以将 Lucene 索引中所有术语的列表提取为字符串列表?我在文档中找不到该功能。谢谢!
问问题
10442 次
2 回答
17
在 Lucene 4(和 5)中:
Terms terms = SlowCompositeReaderWrapper.wrap(directoryReader).terms("field");
编辑:
现在这似乎是“正确”的方式(Lucene 6 及更高版本):
LuceneDictionary ld = new LuceneDictionary( indexReader, "field" );
BytesRefIterator iterator = ld.getWordsIterator();
BytesRef byteRef = null;
while ( ( byteRef = iterator.next() ) != null )
{
String term = byteRef.utf8ToString();
}
于 2012-11-19T20:21:03.923 回答
12
Lucene 3:
爪哇:
IndexReader indexReader = IndexReader.open(path); TermEnum termEnum = indexReader.terms(); while (termEnum.next()) { Term term = termEnum.term(); System.out.println(term.text()); } termEnum.close(); indexReader.close();
Java(特定字段的所有术语):如何从 Lucene 的特定字段中获取唯一术语列表?
于 2012-06-21T23:21:26.213 回答