我有一个索引,带有“从属关系”字段,一些示例值是:
H 210F 211等等..。(底线是隶属关系是以多种方式编写的,没有明显的一致性)
我使用“斯坦福大学医学院,Palo,CA”(与QueryParser一起)查询附属关系字段上的索引,我得到了很多虚假+ves,大概是因为医学院的存在等等。(注意:我不能使用短语查询,因为在建立附属关系的方式上存在差异)
我尝试了以下几点:
results!)
关于如何处理这个问题,有什么建议吗?如果SpanNearQuery要走的路,对我为什么得到0的结果有什么想法吗?
发布于 2010-03-25 05:20:49
我就是这样做的:
最后,循环遍历hits收集器,并使用字符串比较算法(如Jaro、Levenstein等)作为二级过滤器。(这很慢,但确保了精确性)。
希望这能有所帮助。
发布于 2010-03-24 06:39:11
你是用或搜索代替和?
可以将默认运算符设置为和使用QueryParser.setDefaultOperator()。将默认运算符设置为并应消除所有误报。但是,如果您的索引值是"Stanford University School of Medicine, Palo Alto, CA ",,并且正在搜索"Stanford University School of Medicine, Palo Alto, CA USA", (注意查询中的额外术语USA ),您可能会冒着虚假否定的风险。
如果查询的术语不会超过索引值,这将解决您的问题。
https://stackoverflow.com/questions/2503716
复制相似问题