【发布时间】:2016-04-05 15:08:24
【问题描述】:
我正在使用 Lucene.NET 来索引一组文档的内容。我的索引包含几个字段,但我主要关心查询“内容”字段。我试图找出索引以及创建查询的最佳方式来满足要求。
以下是当前要求:
- 能够搜索多个关键字,例如“飞机火车汽车”(减去引号)。这应该给我包含任何条款的所有文档,但包含所有三个的文档应该在顶部
- 能够搜索短语,例如“飞机、火车和汽车”(带引号),只有当它们按该顺序在一起时才会匹配。
- 至于停用词,我可以完全忽略它们,或者包括它们。
- 至于标点符号或特殊字符,同样处理。我可以完全忽略它们,也可以包含它们。
- 最后两个只需要保持一致,不一定彼此一致,而是索引器和搜索器如何处理它们。所以我只是不想出现用户搜索“飞机和火车”但它与包含该短语的文档不匹配的情况,因为索引器取出了“和”但搜索器正在尝试搜索那个特定的短语。
有些文档很大,所以我想我们不想做Field.Store。是的,对吧?除非我们必须做我们需要做的事。
【问题讨论】:
标签: search lucene lucene.net