JsonPath UND-Operator für Array
Ich habe ein array in JSON und ich möchte ein, zwei Filter, um es so auf:
$._embedded.values[0]._embedded.data[?(@.var1='value1' && @.var2='value2')]
Brauche ich, um wählen Sie nur die Elemente aus dem array, das entspricht den UND-Betrieb. In der Praxis ist jedoch dieser scheint nicht zu funktionieren.
Ist es möglich, dies zu tun oder muss ich eine zwei-Schritt-Aktion zu extrahieren einen Satz filtern Sie dann wieder, um meine endgültige Ergebnisse?
InformationsquelleAutor Mike Chinaloy | 2015-04-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Soweit ich weiß UND /ODER noch nicht unterstützt werden. Man kann sich aber auch relativ nahe mit diesem [,] array. Aber auch das machte mich Wundern, wenn ich es getestet habe. Es ist ein seltsames Verhalten. Ich nahm ein Beispiel JSON-string aus der Jayway JsonPath Evaluator und steckte es in JsonPath Expression Tester (weil es nicht funktioniert hat mit Jayway, als ich versucht habe).
Also die JSON habe ich getestet, mit der curiousconcept version:
Wird, und der Ausdruck:
sind die Ergebnisse in:
was scheint perfekt zu sein. (nehmen Sie den Preis 8.99 UND in der Kategorie "Fiktion" ... perfekt!!!)
ABER: es zu ändern:
dann die Ausgabe:
Scheint es mir, dass [,] ist nicht gut umgesetzt Jayway JsonPath Tester sowie curiousconcept.com expression tester.
Aber von dem, was ich weiß, Sie arbeiten an einer (real -) Umsetzung von und-UND oder - (issue27 hier bei google code).
Hoffe, das klärt wenigstens etwas!
Alternativ fand ich, dass ich erreichen konnte, was ich brauchte, um durch die Verwendung von Filter-Prädikaten in mein Java-code
ja... wenn Ihr noch etwas (wie java, c#...) weiter zu verarbeiten, das Ergebnis(s) es ist nicht allzu schlimm, dass die Betreiber nicht arbeiten...
Nach goessner.net/articles/JsonPath/index.html#e2 operator [,] führt eine union. Das heißt, es wird Arbeit als ein ODER statt der UND diese Frage bezieht sich.
InformationsquelleAutor stefankmitph
Den Jayway Umsetzung unterstützt eingebettet und-UND ODER-Kriterien.
Probieren Sie es aus und vergleichen Sie die unterschiedlichen Implementierungen hier http://jsonpath.herokuapp.com/
InformationsquelleAutor kalle
unten ist ein Beispiel zeigt, JSON Pfad mit und-UND ODER-Kriterien:
Bekommen alle Bücher mit Preis von weniger als 10 und 'fiction' Kategorie
Bekommen alle Bücher mit Preis, die weniger als 10 oder jedes Buch von 'fiction' Kategorie
Können Sie auch versuchen, die Vermischung der und-UND Oder-Kriterien:
Holen Sie Bücher von 'Herman Melville' mit Preis von weniger als 10 oder sein Buch 'fiction' Kategorie
InformationsquelleAutor Karthik Kamath