Lucene NOOB警报!Lucene中的查询类型
我认为自己是一个至少具有合理智能的人,然而我在心理上对Lucene中的查询类型进行精神问题。
在我的特殊情况下,我需要搜索我的文档中只有一个单一的字符串字段长度(平均约50个字符)。
我希望用户能够在他们正在搜索的项目内键入单词的开头。而且我也不想强制他们提供条款的顺序。
实例字段:“一般的品牌实力”
应符合搜索: “通用品牌实力” “品牌普力” ...... “创麸STR” “糠通用海峡” 。 .. 等
我可能在单独的字段中存储我的信息(每个单词在这个例子中)如果有帮助,但我不相信它会。
我目前迷失在模糊通配符和多项短语的世界。
任何人都可以为我澄清这整个场景吗? (是的,我已经广泛地在网上寻找帮助,但找不到像样的资源)。
顺便说一句我正在使用Lucene 2.9,但我不认为这真的很重要。
+1为通配符解决方案。最简单,尽管它可能会对大型索引产生性能问题。 – bajafresh4life 2010-07-29 16:28:22
使用wilcard查询(通过添加星号)和PrefixQuery之间是否存在显着差异?他们看起来和我一样。思考?他们基本上归结为同一件事情吗? – berko 2010-07-30 03:37:53
是的,它们是相同的。 Javadocs这样描述它: “查询匹配包含具有指定前缀的术语的文档.PrefixQuery由QueryParser构建,用于像app *一样的输入。” – Mikos 2010-07-30 11:20:22