我正在尝试使用 lucene 索引搜索数据。我正在使用 KeywordTokenizerFactory 和 LowerCaseFilterFactory 我正在尝试获取名称为“police name 25423”的记录,但我没有获取数据。如果我分别尝试使用“警察”或“姓名”或“25423”或“警察姓名”,那么我会得到结果。为什么使用全名无法得到结果?
最佳答案
问题是因为您使用了 KeywordTokenizerFactory。在本例中,Lucene 将搜索包含术语“警察姓名 25423”的文档。您应该将 tokenizer 工厂更改为 StandardTokenizerFactory,在这种情况下,您将搜索包含术语“police”“name”“25423”的文档。
关于java - Lucene搜索不适用于字符串数字组合java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18869528/