[英]Change StandardAnalyzer Lucene
我正在嘗試使用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 : ""
我該如何解決?
謝謝!
問題在於您要搜索的文本中的引號需要轉義。 您可以使用QueryParser.escape
轉義要搜索的文本:
Query query = parser.parse("\"" + QueryParser.escape(doc.get("title")) + "\"");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.