【发布时间】:2016-08-24 02:24:30
【问题描述】:
您好,我遇到了 Lucene 搜索不返回一致结果的问题。 使用 StandardAnalyzer 完成索引,lucene 版本为 3.0
数据库中的一个示例条目是
A1BC-1-12345678 - AU-01 / 123456 - No.1 ABC DEFG XX-YYY Example Data
如果我搜索整个字符串,它不会返回任何结果。
如果我取出单个破折号和斜线,请搜索
A1BC-1-12345678 AU-01 123456 No.1 ABC DEFG XX-YYY Example Data
它不会返回任何结果。
如果我用空格替换 XX-YYY 之间的破折号,请搜索
A1BC-1-12345678 AU-01 123456 No.1 ABC DEFG XX YYY Example Data
--------它返回结果!----------
现在,如果我包含破折号和斜杠,并将 XX-YYY 之间的破折号替换为空格,请搜索
A1BC-1-12345678 - AU-01 / 123456 - No.1 ABC DEFG XX YYY Example Data
它不会返回任何结果。
最后,如果我将 AU-01 和 XX-YYY 之间的破折号替换为空格,请搜索
A1BC-1-12345678 AU 01 123456 No.1 ABC DEFG XX YYY Example Data
它不会返回任何结果。
总之,“XX-YYY”无效,但“AU-01”有效,但“XX YYY”有效,“AU 01”无效,那么问题出在哪里?
我能做些什么来解决这个问题?
【问题讨论】:
-
你搜索的怎么样了?这很可能与您的分析有关,但如果没有任何细节或代码,很难说出问题所在。