2009-12-17 54 views

回答

1

SpanTermQuery.getSpans會給出一個列舉文檔以及術語出現的位置。文檔已排序,因此您可以統計每個文檔顯示的次數,而忽略位置信息。

5

Lucene使用基於字段而不是基於文檔的索引。 爲了讓每個文檔詞數:

  1. 遍歷文件使用IndexReader.document()請將isDeleted和()。
  2. 在文檔d中,使用Document.getFields()迭代字段。
  3. 對於每個字段f,使用getTermFreqVector()獲取條款。
  4. 查看術語向量和每個術語的和頻率。
  5. 每個字段的詞頻總和會給你文檔的詞頻矢量。
+1

+1。您可能不得不考慮文本發生的詞幹和其他轉換。例如,如果您在詞幹字段中搜索「美麗」一詞,則索引中的實際詞將是「美麗」。 – 2009-12-25 04:36:42