Solr-Abfrage analysiert keinen Schrägstrich

9

Ist der Forward-Schrägstrich "/" ein reserviertes Zeichen in solr-Feldnamen?

Ich habe Probleme beim Schreiben einer Solr-Sortier-Abfrage, die nach Feldern mit einem Schrägstrich "/"

sucht

Wenn ich eine http-Anfrage an meinen solr-Server mache:

%Vor%

Funktioniert aber

%Vor%

Beide Fehler sagen "FieldCache kann nicht in mehrwertigen Feldern verwendet werden: mit"

Jedes Solr-Dokument enthält zwei int-Felder "normal" und "mit / Schrägstrich". Mit meinem Solr-Schema indizieren die Felder als so

%Vor%

Gibt es eine spezielle Möglichkeit, um Schrägstriche in solr zu codieren? Oder gibt es noch andere Begrenzungszeichen, die ich verwenden kann? Ich benutze bereits "-" und "." für andere Zwecke.

    
Akusete 29.08.2011, 06:16
quelle

3 Antworten

6

Ich habe gerade das gleiche Problem gefunden und nach einigen Experimenten festgestellt, dass Sie, wenn Sie einen Schrägstrich im Feldnamen haben, in der Solr-Abfrage mit einem Backslash escape (aber beachten Sie Das müssen Sie nicht im Feldlistenparameter tun, daher wird eine Suche, die nach /my/field/name sucht, die my_value enthält, in das Feld "q" eingegeben:

\/my\/field\/name:my_value

Ich habe das Sortierfeld nicht ausprobiert, aber probiere das aus und lass es uns wissen:)

Dies ist auf Solr 4.0.0 alpha.

    
tw123 18.07.2012 21:25
quelle
1

Aus dem Solr-Wiki in Ссылка :

  

Solr 4.0 hat die Unterstützung für reguläre Ausdrücke hinzugefügt, was bedeutet, dass '/' jetzt ist   ein Sonderzeichen und muss bei der Suche nach Literal maskiert werden   Schrägstrich.

    
Xavier Portebois 15.01.2016 09:38
quelle
-1

In meinem Fall musste ich nach dem Schrägstrich / mit der Wildcard * suchen, z. B.:

%Vor%

Ich habe versucht, so zu entkommen:

%Vor%

aber das hat auch nicht funktioniert.

Die Lösung bestand darin, den Text mit double quote " like do:

zu umbrechen %Vor%

beide haben das gleiche Ergebnis mit und ohne Umgehung des Schrägstrichs

zurückgegeben     
Waqleh 28.08.2017 12:53
quelle

Tags und Links