浏览 2489 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-05-21
最后修改:2010-05-21
引用 id:"1231231" && title :"MYNAMEmonkey" && content:"你好吗" && ur:"sdfsdfs"" 四个条件的AND计算,在QueryParser解析为: 引用 +id:1231231 +title:mynamemonkey +content:"你 好 吗" +ur:sdfsdfs 这个逻辑应该是正确的 表达式2: 引用 id:"1231231" && title :"MYNAMEmonkey" || content:"你好吗" && ur:"sdfsdfs"" 中间的运算符改为|| OR计算,在QueryParser也被解析为: 引用 +id:1231231 +title:mynamemonkey +content:"你 好 吗" +ur:sdfsdfs 这个逻辑就不对了 大家也试试看,这应该是个bug吧。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-05-21
补充一下,使用的Analyzer是StandardAnalyzer
|
|
返回顶楼 | |
发表时间:2010-05-24
应该加括号区别 而且或运算不应该加+号 注意运算优先级
|
|
返回顶楼 | |
发表时间:2010-05-24
qyhdt 写道 应该加括号区别 而且或运算不应该加+号 注意运算优先级
兄弟你看清楚帖子上说的问题没啊,有+号的那个表达式是QueryParse的输出结果啊,所以我才说QueryParser有问题啊 |
|
返回顶楼 | |
发表时间:2010-06-29
我今天测试了一下,是使用 StandardAnalyzer,
结果如下: 文件内容为 "id:"1231231" && title :"MYNAMEmonkey" && content:"你好吗" && ur:"sdfsdfs" |
|
返回顶楼 | |
发表时间:2010-06-29
zbmartin 写道 我今天测试了一下,是使用 StandardAnalyzer, 结果如下: 文件内容为 "id:"1231231" && title :"MYNAMEmonkey" && content:"你好吗" && ur:"sdfsdfs" 没有你说的那个+号 |
|
返回顶楼 | |
发表时间:2010-06-29
zbmartin 写道 zbmartin 写道 我今天测试了一下,是使用 StandardAnalyzer,
结果如下: 文件内容为 "id:"1231231" && title :"MYNAMEmonkey" && content:"你好吗" && ur:"sdfsdfs" 没有你说的那个+号 对比了两种情况的分析结果了吗,与和或的。 另外你用的是啥版本的Lucene QueryParser,为啥会没有+号哩? |
|
返回顶楼 | |