Lucene-Abfrageparser mit "/" in Abfragekriterien

8

Wenn ich versuche, in Lucene nach etwas wie "Workaround / Fix" zu suchen, wird dieser Fehler ausgegeben:

%Vor%

Das sind meine Zeilen 111 und 112:

%Vor%

Was muss ich tun, damit das "/" analysiert werden kann?

    
abitnew 22.07.2013, 22:08
quelle

3 Antworten

14

Der Abfrageparser interpretiert Schrägstriche als Anfang / Ende oder eine Regex-Abfrage (ab 4.0, siehe Dokumentation hier ).

Um also Schrägstriche in die Abfrage einzufügen, müssen Sie entkomme ihnen , indem du ihnen einen umgekehrten Schrägstrich ( \ ) hinzufügst.

Sie können mit QueryParser.escape(String) .

    
femtoRgon 23.07.2013 00:06
quelle
2

Ich habe ein ähnliches Problem bei der Verwendung von '/' in Lucene-Abfragen festgestellt, die vom Kibana-Dashboard für elastische Suche ausgegeben wurden. Ich entkam den '/' Zeichen, wie in der Dokumentation angegeben, und immer noch keinen Erfolg. Ich denke, das hängt mit dem hier gemeldeten Template-Bug zusammen: Ссылка . Noch nicht sicher, wird aktualisiert, wenn wir die Logstash-Komponenten aktualisieren

    
zayquan 13.03.2015 00:01
quelle
0

Ich hatte einen Fall, bei dem bei Verwendung eines Schrägstrichs mit Platzhalter kein Ergebnis zurückgegeben wurde, selbst wenn es maskiert wurde:

%Vor%

Die Lösung war ein Doppelzitat hinzuzufügen:

%Vor%     
Waqleh 28.08.2017 13:10
quelle

Tags und Links