我的查询是cs_contents:(canal+) OR cs_docs:(canal+) OR cs_annots:(canal+)
当传入lucene时,查询将变为+((cs_contents:canal cs_contents:canal) (cs_docs:canal cs_docs:canal) (cs_annots:canal cs_annots:canal)) +DBName:dPortal +TableName:CASE_ACTION
即使我用反斜杠转义正斜杠,它也不起作用,因为反斜杠在这个库中也是一个特殊字符。
发布于 2014-12-01 17:02:44
然后,我建议您也尝试转义反斜杠:\+
发布于 2014-12-01 17:08:31
我想你可以把文字写在引号里,就像这样。
cs_contents:"(canal+)" OR cs_docs:"(canal+)" OR cs_annots:"(canal+)"发布于 2014-12-08 13:02:58
QueryParser documentation解释了应该转义的内容。执行此类转义的编程方法是使用QueryParserBase.escape(String)。
https://stackoverflow.com/questions/27224674
复制相似问题