当我使用Luke使用标准分析器搜索我的Lucene索引时,我可以看到我搜索的字段包含MY_VALUE形式的值。 当我搜索字段:“MY_VALUE”,但是,查询被解析为字段:“我的价值”Lucene搜索和下划线
是否有一种简单的方法来转义下划线(_)字符,以便它将搜索它?
编辑:
4/1/2010上午11:08 PST
我认为这是在该标记者对Lucene的2.9.1一个错误,它可能是那里。 加载了卢克和尝试搜索“BB_HHH_FFFF5_SSSS”的时候,有一个数字,将返回下列标记:
“BB hhh_ffff5_ssss”
一些测试后,我发现,这是因为号码。如果我输入
“BB_HHH_FFFF_SSSS”,我得到
“BB HHH FFFF SSSS”
在这一点上,我倾向于一个标记错误,除非数量的存在应该有这个行为,但我不明白为什么。
任何人都可以证实这一点吗?
不,我没有使用标准的分析仪这就是为什么这是奇怪的索引。 – Matt 2010-03-26 21:29:37
如果您使用标准分析器进行索引,那么您的索引将包含“我的”和“值”作为两个不同的标记。尝试搜索“我的价值”(包括引号),你可能会得到结果。 – Thomas 2010-03-28 11:18:26
我会仔细检查一下您使用哪个分析器进行索引。如果您使用StandardAnalyzer进行索引编制,则不可能将MY_VALUE作为术语,因为StandardAnalyzer始终以下划线分隔。 – bajafresh4life 2010-03-30 01:27:18