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: