Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 改变Lucene分析仪_Java_Lucene_Tokenize_Standardanalyzer - Fatal编程技术网

Java 改变Lucene分析仪

Java 改变Lucene分析仪,java,lucene,tokenize,standardanalyzer,Java,Lucene,Tokenize,Standardanalyzer,我正在尝试使用lucene 4.10.3的StandardAnalyzer按标题搜索文档。我从一个文件中读取了引号,并添加了双引号,用于使用以下内容构造查询: Query query = parser.parse("\""+doc.get("title")+"\""); 问题是,当它读到菲律宾称债务协议“比墨西哥的lucene更好”的引述时,它返回了这个错误 Cannot parse '"PHILIPPINES SAYS DEBT PACT "BETTER THAN MEXICO'S"': L

我正在尝试使用lucene 4.10.3的StandardAnalyzer按标题搜索文档。我从一个文件中读取了引号,并添加了双引号,用于使用以下内容构造查询:

Query query = parser.parse("\""+doc.get("title")+"\"");
问题是,当它读到菲律宾称债务协议“比墨西哥的lucene更好”的引述时,它返回了这个错误

Cannot parse '"PHILIPPINES SAYS DEBT PACT "BETTER THAN MEXICO'S"': Lexical error at line 1, column 52.  Encountered: <EOF> after : ""
无法解析“菲律宾说债务契约”比墨西哥更好:第52列第1行的词法错误。遇到的问题:在“之后”
我怎样才能解决它


谢谢

问题是您正在搜索的文本中的引号需要转义。您可以使用以下方法转义要搜索的文本:


问题是,您正在搜索的文本中的引号需要转义。您可以使用以下方法转义要搜索的文本:

Query query = parser.parse("\"" + QueryParser.escape(doc.get("title")) + "\"");