簡體   English   中英

更改StandardAnalyzer Lucene

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM