这是个郁闷的问题,今天遇到了,但在lucene中查询的关键字保护有特殊字符,譬如--,会出现如下异常:
org.apache.lucene.queryParser.ParseException: Cannot parse '': Encountered " <EOF>" at line 1, column 0.
Was expecting one of:
    <NOT> ...
    "+" ...
    "-" ...
    "(" ...
    "*" ...
    <QUOTED> ...
    <TERM> ...
    <PREFIXTERM> ...
    <WILDTERM> ...
    "[" ...
    "{" ...
    <NUMBER> ...

解决方法:
使用 QueryParser的静态方法escape(string s),进行自动转义特殊字符后再进行关键字的查询
lucene的特殊字符保护了以下的字符:
+ - && || ! ( ) { } [ ] ^ " ~ * ? :

相关文章:

  • 2021-12-09
  • 2021-12-19
  • 2022-01-23
  • 2022-02-07
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-06-12
  • 2021-11-27
  • 2021-09-24
  • 2021-10-16
  • 2021-10-16
  • 2022-02-17
  • 2021-09-04
相关资源
相似解决方案