JSON_COUNT_MATCHES
Verwenden Sie die Script-Funktion JSON_COUNT_MATCHES, um die Anzahl der Übereinstimmungen eines JSONPath-Ausdrucks in einem JSON-Dokument abzurufen.
Syntax
JSON_COUNT_MATCHES (JSON, JSONPath)
Parameter
-
JSON
Ein String, der ein gültiges JSON-Dokument enthält
-
JSONPath
Ein gültiger JSONPath-Ausdruck
Laufzeitfehler
JSON_COUNT_MATCHES schlägt mit einem Laufzeitfehler unter den folgenden Bedingungen fehl:
-
45334
Wenn Ihr JSON-Dokument ungültig ist
-
45342
Syntaxfehler im JSONPath-Ausdruck
Beispiele:
Im folgenden Beispiel wird die Script-Funktion verwendet, um die Anzahl der Bücher in Ihrem JSON-Warenkorb zu ermitteln:
:SET &JSON#= '[{"item":"book", "price": 12.99, "title": "Learn Cobol in 24 hrs"},{"item":"CD", "price": 6.99, "title": "Coder Muzak"}, {"item":"book", "price": 7.99, "title": "Coder Muzak"}, {"item":"book", "price": 7.99, "title": "Java is also an island"}]'
:SET&BOOKCOUNT#= JSON_COUNT_MATCHES(&JSON#,'$..[?(@.item=="book")]')
:P 'Sie haben &BOOKCOUNT#-Bücher in Ihrem Warenkorb'
Ergebnis des Aktivierungsreports
U00020408 Sie haben 0000000000000002 Bücher in Ihrem Warenkorb
In diesem Beispiel wird die Script-Funktion verwendet, um zu überprüfen, ob Ihr Server einen Fehler zurückgegeben hat, als ein Formular über die REST-API validiert wurde:
:SET&JSON#= '[ ]'
! Entfernen Sie die Auskommentierung der folgenden Zeile, um den Fehlerfall zu simulieren
:SET&JSON#= '[{"error": "isRequired", "field": "username"},{"error": "outOfRange", "field": "age"}]'
:SET&ERRORCOUNT#=JSON_COUNT_MATCHES(&JSON#,'$..error')
:IF&ERRORCOUNT#<> 0
:P 'Sie haben &ERRORCOUNT# Fehler in Ihrem Formular'
:ELSE IF
:P'Validierung erfolgreich'
:ENDIF
Ergebnis des Aktivierungsreports
U00020408 Sie haben 0000000000000002 Fehler in Ihrem Formular
Siehe auch: