2017-02-21 2 views
0

Ich habe ein Feld "macaddress": "ff:ff:00:57:29:05"Wie ein Feld suchen, einen Doppelpunkt (:) Wert in Elasticsearch mit

Wie ich Kolon entweichen kann (:) von ihm als regex Wildcard zu behandeln. Versuchte String mit Schrägstrich zu entkommen (\) aber Abfrage schlägt fehl

{ 
"query": { 
    "wildcard": { 
     "macaddress": "57:" 
    } 
} 
} 

i wie 57 suchen etwas wollen: 25 *, wie kann ich das erreichen?

Antwort

0

Anstelle von Wildcard verwenden Sie stattdessen match_phase.
wildcard sind *, die mit einer beliebigen Zeichenfolge (einschließlich der leeren Zeichenfolge) übereinstimmen, und?, Die mit einem einzelnen Zeichen übereinstimmt.

{ 
    "query": { 
     "match_phrase":{ 
      "macaddress":"57:29" 
     } 
    } 
} 
+0

mit 'match_phrase' oder' Präfix', etc könnte eine Alternative sein. Aber ich wollte wissen, wie wir solchen Sonderzeichen entkommen können, während wir eine Wildcard-Suche machen – Steve

+0

@Steve okay .. ich ging durch Nr. Von Threads .. jeder sagt Wildcard kann Colon nicht entkommen .. aber ich werde danach suchen .. –

Verwandte Themen