1
我正在构建一个基于Java Lucene的搜索系统,此外还添加了一定数量的元字段,其中一个元字段是sourceId字段,它表示条目来自哪里。Lucene按数值搜索
我现在试图从特定源检索所有文档,但索引似乎无法找到它们。但是,如果我搜索通配符值,则返回的文档都具有该字段的正确值。
我使用Lucene的查询是相当简单,基本上index-source-id:1
但未能返回任何命中,如果我搜索content:a*
我得到几十份文件,所有这一切,当记者问,返回值1
为index-source-id
价值,这是正确的。
任何想法?
我已经设置ID为可索引的,是。 我一直在寻找一个分析仪的列表,但找不到一个说它特别处理数字的人,看起来StandardAnalyzer的确如此,我认为这已被弃用,所以也许这可能会有所帮助。 – Martin
重建索引,然后使用StandardAnalyzer而不是SimpleAnalyzer进行搜索,这样做的窍门! – Martin
为了将来的参考,你不想分析(也不标记化)ID字段,因为它们应该是天生的原子,并且爱因斯坦在曼哈顿计划中告诉我们他的朋友们,分裂原子并不是一件好事。 .. – Esko