Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Intrinsische Funktionen für JSONPath Zustände in Step Functions
Verwaltung des Zustands und Transformation von Daten
Erfahren Sie mehr über das Übergeben von Daten zwischen Zuständen mithilfe von Variablen und das Transformieren von Daten mit JSONata.
Warnung
Systeminterne Funktionen sind nur für Staaten verfügbar, die die JSONPathAbfragesprache verwenden. Näheres dazu finden Sie JSONata unter. Transformieren von Daten mit JSONata In-Step-Funktionen
Die Sprache von Amazon States bietet mehrere systeminterne Funktionen, die auch als intrinsische Funktionen bezeichnet werden und in Feldern verwendet werden können, die akzeptiert werden. JSONPath Mit systeminternen Funktionen können Sie grundlegende Datenverarbeitungsvorgänge ausführen, ohne einen Status zu verwenden. Task
Intrinsics ähneln Funktionen in Programmiersprachen. Sie können verwendet werden, um Payload Builder bei der Verarbeitung der Daten zu unterstützen, die zu und aus dem Resource Feld eines Task Bundesstaates übertragen werden, der die JSONPath Abfragesprache verwendet.
In Amazon States Language werden systeminterne Funktionen je nach Art der Datenverarbeitungsaufgabe, die Sie ausführen möchten, in die folgenden Kategorien eingeteilt:
Um systeminterne Funktionen verwenden zu können, müssen Sie den Schlüsselwert .$ in Ihren Zustandsmaschinendefinitionen angeben, wie im folgenden Beispiel gezeigt:
"KeyId.$": "States.Array($.Id)"Sie können in Ihren Workflows bis zu 10 systeminterne Funktionen innerhalb eines Felds verschachteln. Das folgende Beispiel zeigt ein Feld mit dem Namen, das neun verschachtelte systeminterne Funktionen enthält:myArn
"myArn.$": "States.Format('{}.{}.{}', States.ArrayGetItem(States.StringSplit(States.ArrayGetItem(States.StringSplit($.ImageRecipe.Arn, '/'), 2), '.'), 0), States.ArrayGetItem(States.StringSplit(States.ArrayGetItem(States.StringSplit($.ImageRecipe.Arn, '/'), 2), '.'), 1))"QueryLanguage für intrinsische Funktionen erforderlich
Um intrinsische Funktionen verwenden zu können, muss die Zustandsmaschine die Abfragesprache verwenden. JSONPath
Staaten, die verwenden, JSONata können keine systemeigenen Funktionen verwenden; Step Functions bieten jedoch JSONata äquivalente Optionen.
Felder, die systeminterne Funktionen unterstützen
Die folgenden Staaten unterstützen intrinsische Funktionen in den folgenden Bereichen:
-
Status übergeben: Parameter
-
Status der Aufgabe: Parameter ResultSelector, Anmeldeinformationen
-
Paralleler Status: Parameter, ResultSelector
-
Kartenstatus: Parameter, ResultSelector
Intrinsische Eigenschaften für Arrays
Verwenden Sie die folgenden systeminternen Merkmale, um Array-Manipulationen durchzuführen.
States.Array-
Die
States.Arraysysteminterne Funktion benötigt null oder mehr Argumente. Der Interpreter gibt ein JSON-Array zurück, das die Werte der Argumente in der angegebenen Reihenfolge enthält. Beispielsweise angesichts der folgenden Eingabe:{ "Id": 123456 }Du könntest verwenden
"BuildId.$": "States.Array($.Id)"Was das folgende Ergebnis zurückgeben würde:
“BuildId”: [123456] States.ArrayPartition-
Verwenden Sie die
States.ArrayPartitionintrinsische Funktion, um ein großes Array zu partitionieren. Sie können diese systeminterne Funktion auch verwenden, um die Daten zu segmentieren und dann die Nutzdaten in kleinere Teile zu senden.Diese systeminterne Funktion benötigt zwei Argumente. Das erste Argument ist ein Array, während das zweite Argument die Chunk-Größe definiert. Der Interpreter teilt das Eingabearray in mehrere Arrays der durch die Chunk-Größe angegebenen Größe auf. Die Länge des letzten Array-Chunks kann geringer sein als die Länge der vorherigen Array-Chunks, wenn die Anzahl der verbleibenden Elemente im Array kleiner als die Chunk-Größe ist.
Überprüfung von Eingaben
-
Sie müssen ein Array als Eingabewert für das erste Argument der Funktion angeben.
-
Sie müssen für das zweite Argument, das den Chunk-Größenwert darstellt, eine positive Ganzzahl ungleich Null angeben.
Wenn Sie für das zweite Argument einen Wert angeben, der keine Ganzzahl ist, rundet Step Functions ihn auf die nächste Ganzzahl ab.
-
Das Eingabearray darf die Payload-Größenbeschränkung von Step Functions von 256 KiB nicht überschreiten.
Nehmen wir zum Beispiel das folgende Eingabe-Array:
{"inputArray": [1,2,3,4,5,6,7,8,9] }Sie könnten die
States.ArrayPartitionFunktion verwenden, um das Array in Blöcke mit vier Werten zu unterteilen:"inputArray.$": "States.ArrayPartition($.inputArray,4)"Was die folgenden Array-Blöcke zurückgeben würde:
{"inputArray": [ [1,2,3,4], [5,6,7,8], [9]] }Im vorherigen Beispiel gibt die
States.ArrayPartitionFunktion drei Arrays aus. Die ersten beiden Arrays enthalten jeweils vier Werte, die durch die Chunk-Größe definiert sind. Ein drittes Array enthält den verbleibenden Wert und ist kleiner als die definierte Chunk-Größe. -
States.ArrayContains-
Verwenden Sie die
States.ArrayContainssysteminterne Funktion, um festzustellen, ob ein bestimmter Wert in einem Array vorhanden ist. Sie können diese Funktion beispielsweise verwenden, um festzustellen, ob bei einerMapStatus-Iteration ein Fehler aufgetreten ist.Diese systeminterne Funktion benötigt zwei Argumente. Das erste Argument ist ein Array, während das zweite Argument der Wert ist, nach dem innerhalb des Arrays gesucht werden soll.
Überprüfung von Eingaben
-
Sie müssen ein Array als Eingabewert für das erste Argument der Funktion angeben.
Sie müssen ein gültiges JSON-Objekt als zweites Argument angeben.
-
Das Eingabearray darf die Payload-Größenbeschränkung von Step Functions von 256 KiB nicht überschreiten.
Nehmen wir zum Beispiel das folgende Eingabe-Array:
{ "inputArray": [1,2,3,4,5,6,7,8,9], "lookingFor": 5 }Sie könnten die
States.ArrayContainsFunktion verwenden, um denlookingForWert innerhalb von zu findeninputArray:"contains.$": "States.ArrayContains($.inputArray, $.lookingFor)"Da der in gespeicherte Wert in enthalten
lookingForistinputArray, wird das folgende ErgebnisStates.ArrayContainszurückgegeben:{"contains": true } -
States.ArrayRange-
Verwenden Sie die
States.ArrayRangesysteminterne Funktion, um ein neues Array mit einem bestimmten Bereich von Elementen zu erstellen. Das neue Array kann bis zu 1000 Elemente enthalten.Diese Funktion benötigt drei Argumente. Das erste Argument ist das erste Element des neuen Arrays, das zweite Argument ist das letzte Element des neuen Arrays und das dritte Argument ist der Inkrementwert zwischen den Elementen im neuen Array.
Überprüfung von Eingaben
-
Sie müssen für alle Argumente Ganzzahlwerte angeben.
Wenn Sie für eines der Argumente einen Wert angeben, der keine Ganzzahl ist, rundet Step Functions ihn auf die nächste Ganzzahl ab.
-
Sie müssen für das dritte Argument einen Wert ungleich Null angeben.
-
Das neu generierte Array kann nicht mehr als 1000 Elemente enthalten.
Bei der folgenden Verwendung der
States.ArrayRangeFunktion wird beispielsweise ein Array mit einem ersten Wert von 1 und einem Endwert von 9 erstellt, und die Werte zwischen dem ersten und dem letzten Wert werden für jedes Element um zwei erhöht:"array.$": "States.ArrayRange(1, 9, 2)"Was das folgende Array zurückgeben würde:
{"array": [1,3,5,7,9] } -
States.ArrayGetItem-
Diese intrinsische Funktion gibt den Wert eines angegebenen Indexes zurück. Diese Funktion benötigt zwei Argumente. Das erste Argument ist ein Array von Werten und das zweite Argument ist der Array-Index des zurückzugebenden Werts.
Verwenden Sie beispielsweise die folgenden
indexWerteinputArrayund:{ "inputArray": [1,2,3,4,5,6,7,8,9], "index": 5 }Aus diesen Werten können Sie die
States.ArrayGetItemFunktion verwenden, um den Wert an derindexPosition 5 innerhalb des Arrays zurückzugeben:"item.$": "States.ArrayGetItem($.inputArray, $.index)"In diesem Beispiel
States.ArrayGetItemwürde das folgende Ergebnis zurückgegeben werden:{ "item": 6 } States.ArrayLength-
Die
States.ArrayLengthsysteminterne Funktion gibt die Länge eines Arrays zurück. Sie hat ein Argument, das Array, dessen Länge zurückgegeben werden soll.Zum Beispiel bei dem folgenden Eingabe-Array:
{ "inputArray": [1,2,3,4,5,6,7,8,9] }Sie können verwenden
States.ArrayLength, um die Länge zurückzugeben voninputArray:"length.$": "States.ArrayLength($.inputArray)"In diesem Beispiel
States.ArrayLengthwürde das folgende JSON-Objekt zurückgegeben, das die Array-Länge darstellt:{ "length": 9 } States.ArrayUnique-
Die
States.ArrayUniquesysteminterne Funktion entfernt doppelte Werte aus einem Array und gibt ein Array zurück, das nur eindeutige Elemente enthält. Diese Funktion verwendet ein Array, das unsortiert sein kann, als einziges Argument.Der folgende Code
inputArrayenthält beispielsweise eine Reihe von doppelten Werten:{"inputArray": [1,2,3,3,3,3,3,3,4] }Sie könnten die
States.ArrayUniqueFunktion als verwenden und das Array angeben, aus dem Sie doppelte Werte entfernen möchten:"array.$": "States.ArrayUnique($.inputArray)"Die
States.ArrayUniqueFunktion würde das folgende Array zurückgeben, das nur eindeutige Elemente enthält, und alle doppelten Werte entfernen:{"array": [1,2,3,4] }
Intrinsische Funktionen für die Datenkodierung und -dekodierung
Verwenden Sie die folgenden systemeigenen Funktionen, um Daten auf der Grundlage des Base64-Kodierungsschemas zu codieren oder zu dekodieren.
States.Base64Encode-
Verwenden Sie die
States.Base64Encodesysteminterne Funktion, um Daten auf der Grundlage des MIME Base64-Kodierungsschemas zu codieren. Sie können diese Funktion verwenden, um Daten an andere AWS Dienste zu übergeben, ohne eine Funktion zu verwenden. AWS LambdaDiese Funktion benötigt als einziges Argument eine Datenzeichenfolge mit bis zu 10.000 Zeichen zum Kodieren.
Stellen Sie sich zum Beispiel die folgende
inputZeichenfolge vor:{"input": "Data to encode" }Sie können die
States.Base64EncodeFunktion verwenden, um dieinputZeichenfolge als MIME-Base64-Zeichenfolge zu codieren:"base64.$": "States.Base64Encode($.input)"Die
States.Base64EncodeFunktion gibt als Antwort die folgenden codierten Daten zurück:{"base64": "RGF0YSB0byBlbmNvZGU=" } States.Base64Decode-
Verwenden Sie die
States.Base64Decodesysteminterne Funktion, um Daten auf der Grundlage des MIME Base64-Dekodierungsschemas zu dekodieren. Sie können diese Funktion verwenden, um Daten an andere AWS Dienste zu übergeben, ohne eine Lambda-Funktion zu verwenden.Diese Funktion verwendet als einziges Argument eine Base64-kodierte Datenzeichenfolge mit bis zu 10.000 Zeichen für die Dekodierung.
Beispielsweise angesichts der folgenden Eingabe:
{"base64": "RGF0YSB0byBlbmNvZGU=" }Sie können die
States.Base64DecodeFunktion verwenden, um die Base64-Zeichenfolge in eine für Menschen lesbare Zeichenfolge zu dekodieren:"data.$": "States.Base64Decode($.base64)"Das
States.Base64Decode functionwürde als Antwort die folgenden dekodierten Daten zurückgeben:{"data": "Decoded data" }
Intrinsisch für die Hash-Berechnung
States.Hash-
Verwenden Sie die
States.Hashsysteminterne Funktion, um den Hashwert einer bestimmten Eingabe zu berechnen. Sie können diese Funktion verwenden, um Daten an andere AWS Dienste zu übergeben, ohne eine Lambda-Funktion zu verwenden.Diese Funktion benötigt zwei Argumente. Das erste Argument sind die Daten, deren Hashwert Sie berechnen möchten. Das zweite Argument ist der Hash-Algorithmus, der zur Durchführung der Hash-Berechnung verwendet werden soll. Bei den von Ihnen angegebenen Daten muss es sich um eine Objektzeichenfolge mit 10.000 Zeichen oder weniger handeln.
Bei dem von Ihnen angegebenen Hash-Algorithmus kann es sich um einen der folgenden Algorithmen handeln:
-
MD5 -
SHA-1 -
SHA-256 -
SHA-384 -
SHA-512
Sie können diese Funktion beispielsweise verwenden, um den Hashwert der
DataZeichenfolge anhand der angegebenenAlgorithmWerte zu berechnen:{ "Data": "input data", "Algorithm": "SHA-1" }Sie können die
States.HashFunktion verwenden, um den Hashwert zu berechnen:"output.$": "States.Hash($.Data, $.Algorithm)"Die
States.HashFunktion gibt als Antwort den folgenden Hashwert zurück:{"output": "aaff4a450a104cd177d28d18d7485e8cae074b7" } -
Intrinsische Eigenschaften für die Manipulation von JSON-Daten
Verwenden Sie diese Funktionen, um grundlegende Datenverarbeitungsvorgänge an JSON-Objekten durchzuführen.
States.JsonMerge-
Verwenden Sie die
States.JsonMergesysteminterne Funktion, um zwei JSON-Objekte zu einem einzigen Objekt zusammenzuführen. Diese Funktion benötigt drei Argumente. Die ersten beiden Argumente sind die JSON-Objekte, die Sie zusammenführen möchten. Das dritte Argument ist ein boolescher Wert von.falseDieser boolesche Wert bestimmt, ob der Deep Merging-Modus aktiviert ist.Derzeit unterstützt Step Functions nur den Shallow-Merging-Modus. Daher müssen Sie den booleschen Wert als angeben.
falseWenn im Shallow-Modus derselbe Schlüssel in beiden JSON-Objekten vorhanden ist, überschreibt der Schlüssel des letzteren Objekts denselben Schlüssel im ersten Objekt. Außerdem werden Objekte, die in einem JSON-Objekt verschachtelt sind, nicht zusammengeführt, wenn Sie Shallow Merging verwenden.Sie können die
States.JsonMergeFunktion beispielsweise verwenden, um die folgenden JSON-Objekte zusammenzuführen, die den Schlüssel gemeinsam haben.a{ "json1": { "a": {"a1": 1, "a2": 2}, "b": 2 }, "json2": { "a": {"a3": 1, "a4": 2}, "c": 3 } }Sie können die Objekte json1 und json2 als Eingaben in der
States.JsonMergeFunktion angeben, um sie zusammenzuführen:"output.$": "States.JsonMerge($.json1, $.json2, false)"Das
States.JsonMergegibt das folgende zusammengeführte JSON-Objekt als Ergebnis zurück. Im zusammengeführten JSON-Objektoutputaersetzt derjson2Schlüssel desjson1Objekts den Schlüssel des Objektsa. Außerdemawird das verschachtelte Objekt imjson1Objektschlüssel verworfen, da der flache Modus das Zusammenführen verschachtelter Objekte nicht unterstützt.{ "output": { "a": {"a3": 1, "a4": 2}, "b": 2, "c": 3 } } -
States.StringToJson -
Die
States.StringToJsonFunktion verwendet als einziges Argument einen Referenzpfad zu einer maskierten JSON-Zeichenfolge.Der Interpreter wendet einen JSON-Parser an und gibt das geparste JSON-Formular der Eingabe zurück. Sie können diese Funktion beispielsweise verwenden, um die folgende Eingabezeichenfolge zu maskieren:
{ "escapedJsonString": "{\"foo\": \"bar\"}" }Verwenden Sie die
States.StringToJsonFunktion und geben Sie dasescapedJsonStringals Eingabeargument an:States.StringToJson($.escapedJsonString)Die
States.StringToJsonFunktion gibt das folgende Ergebnis zurück:{ "foo": "bar" } -
States.JsonToString -
Die
States.JsonToStringFunktion benötigt nur ein Argument, nämlich den Pfad, der die JSON-Daten enthält, die als Zeichenfolge ohne Escape-Zeichen zurückgegeben werden sollen. Der Interpreter gibt eine Zeichenfolge zurück, die JSON-Text enthält, der die durch den Pfad angegebenen Daten darstellt. Sie können beispielsweise den folgenden JSON-Pfad angeben, der einen Escape-Wert enthält:{ "unescapedJson": { "foo": "bar" } }Stellen Sie der
States.JsonToStringFunktion die darin enthaltenen Daten zur VerfügungunescapedJson:States.JsonToString($.unescapedJson)Die
States.JsonToStringFunktion gibt die folgende Antwort zurück:{\"foo\": \"bar\"}
Intrinsik für mathematische Operationen
Verwenden Sie diese Funktionen, um mathematische Operationen auszuführen.
States.MathRandom-
Verwenden Sie die
States.MathRandomsysteminterne Funktion, um eine Zufallszahl zwischen der angegebenen Startzahl (einschließlich) und der Endzahl (ausschließlich) zurückzugeben.Sie können diese Funktion verwenden, um eine bestimmte Aufgabe auf zwei oder mehr Ressourcen zu verteilen.
Diese Funktion benötigt drei Argumente. Das erste Argument ist die Startnummer, das zweite Argument ist die Endzahl und das letzte Argument steuert den optionalen Startwert. Beachten Sie, dass, wenn Sie diese Funktion mit demselben Startwert verwenden, identische Zahlen zurückgegeben werden.
Wichtig
Da die
States.MathRandomFunktion keine kryptografisch sicheren Zufallszahlen zurückgibt, empfehlen wir, sie nicht für sicherheitsrelevante Anwendungen zu verwenden.Überprüfung von Eingaben
-
Sie müssen Ganzzahlwerte für die Argumente Startnummer und Endnummer angeben.
Wenn Sie für das Argument Startnummer oder Endnummer einen Wert angeben, der keine Ganzzahl ist, rundet Step Functions diesen Wert auf die nächste Ganzzahl ab.
Um beispielsweise eine Zufallszahl zwischen eins und 999 zu generieren, können Sie die folgenden Eingabewerte verwenden:
{ "start": 1, "end": 999 }Um die Zufallszahl zu generieren, geben Sie die
endWertestartund für dieStates.MathRandomFunktion ein:"random.$": "States.MathRandom($.start, $.end)"Die
States.MathRandomFunktion gibt die folgende Zufallszahl als Antwort zurück:{"random": 456 } -
States.MathAdd-
Verwenden Sie die
States.MathAddsysteminterne Funktion, um die Summe zweier Zahlen zurückzugeben. Sie können diese Funktion beispielsweise verwenden, um Werte innerhalb einer Schleife zu erhöhen, ohne eine Lambda-Funktion aufzurufen.Überprüfung von Eingaben
-
Sie müssen Ganzzahlwerte für alle Argumente angeben.
Wenn Sie für eines oder beide Argumente einen Wert angeben, der keine Ganzzahl ist, rundet Step Functions ihn auf die nächste Ganzzahl ab.
-
Sie müssen Ganzzahlwerte im Bereich von -2147483648 und 2147483647 angeben.
Sie können beispielsweise die folgenden Werte verwenden, um eins von 111 zu subtrahieren:
{ "value1": 111, "step": -1 }Verwenden Sie dann die
States.MathAddFunktion definierendvalue1als Startwert undstepals Wert, um den Sie erhöht werden sollen:value1"value1.$": "States.MathAdd($.value1, $.step)"Die
States.MathAddFunktion würde als Antwort die folgende Zahl zurückgeben:{"value1": 110 } -
Systemimmanent für die String-Operation
States.StringSplit-
Verwenden Sie die
States.StringSplitsysteminterne Funktion, um eine Zeichenfolge in ein Array von Werten aufzuteilen. Diese Funktion benötigt zwei Argumente. Das erste Argument ist eine Zeichenfolge und das zweite Argument ist das Trennzeichen, mit dem die Funktion die Zeichenfolge teilt.Beispiel - Teilt eine Eingabezeichenfolge mit einem einzigen Trennzeichen
Verwenden Sie in diesem Beispiel,
States.StringSplitum Folgendes zu teileninputString, das eine Reihe von durch Kommas getrennten Werten enthält:{ "inputString": "1,2,3,4,5", "splitter": "," }Verwenden Sie die
States.StringSplitFunktion und definieren SieinputStringals erstes Argument und das Trennzeichensplitterals zweites Argument:"array.$": "States.StringSplit($.inputString, $.splitter)"Die
States.StringSplitFunktion gibt als Ergebnis das folgende String-Array zurück:{"array": ["1","2","3","4","5"] }Beispiel - Teilt eine Eingabezeichenfolge mit mehreren Trennzeichen auf
Verwenden Sie in diesem Beispiel,
States.StringSplitum Folgendes zu unterteileninputString, das mehrere Trennzeichen enthält:{ "inputString": "This.is+a,test=string", "splitter": ".+,=" }Verwenden Sie die
States.StringSplitFunktion wie folgt:{ "myStringArray.$": "States.StringSplit($.inputString, $.splitter)" }Die
States.StringSplitFunktion gibt als Ergebnis das folgende String-Array zurück:{"myStringArray": [ "This", "is", "a", "test", "string" ]}
Intrinsisch für die Generierung eindeutiger Identifikatoren
States.UUID-
Verwenden Sie die
States.UUIDsysteminterne Funktion, um einen mit Zufallszahlen generierten Universally Unique Identifier (v4-UUID) zurückzugeben. Sie können diese Funktion beispielsweise verwenden, um andere AWS Dienste oder Ressourcen aufzurufen, die einen UUID-Parameter benötigen, oder Elemente in eine DynamoDB-Tabelle einzufügen.Die
States.UUIDFunktion wird ohne Angabe von Argumenten aufgerufen:"uuid.$": "States.UUID()"Die Funktion gibt eine zufällig generierte UUID zurück, wie im folgenden Beispiel:
{"uuid": "ca4c1140-dcc1-40cd-ad05-7b4aa23df4a8" }
Intrinsisch für den generischen Betrieb
States.Format-
Verwenden Sie die
States.Formatsysteminterne Funktion, um eine Zeichenfolge sowohl aus literalen als auch aus interpolierten Werten zu erstellen. Diese Funktion benötigt ein oder mehrere Argumente. Der Wert des ersten Arguments muss eine Zeichenfolge sein und kann null oder mehr Instanzen der Zeichenfolge enthalten{}. Der intrinsische Funktionsaufruf muss so viele verbleibende Argumente enthalten, wie es vorkommen kann.{}Der Interpreter gibt die im ersten Argument definierte Zeichenfolge zurück, wobei jedes Argument im systeminternen Aufruf durch den Wert des der Position entsprechenden Arguments{}ersetzt wird.Sie können beispielsweise die folgenden Eingaben einer Person und einen
templateSatz verwendenname, in den ihr Name eingefügt werden soll:{ "name": "Arnav", "template": "Hello, my name is {}." }Verwenden Sie die
States.FormatFunktion und geben Sie dietemplateZeichenfolge und die Zeichenfolge an, die anstelle der{}Zeichen eingefügt werden sollen:States.Format('Hello, my name is {}.', $.name)or
States.Format($.template, $.name)Bei einer der vorherigen Eingaben gibt die
States.FormatFunktion als Antwort die vollständige Zeichenfolge zurück:Hello, my name is Arnav.
Reservierte Zeichen in systemeigenen Funktionen
Die folgenden Zeichen sind für systeminterne Funktionen reserviert und müssen mit einem umgekehrten Schrägstrich ('\') maskiert werden, wenn sie im Wert vorkommen sollen:, und. ' { } \
Wenn das Zeichen als Teil des Werts erscheinen \ soll, ohne als Escape-Zeichen zu dienen, müssen Sie es mit einem umgekehrten Schrägstrich maskieren. Die folgenden Escape-Zeichenfolgen werden mit systemeigenen Funktionen verwendet:
Die Literalzeichenfolge steht für.
\''Die Literalzeichenfolge
\{steht für.{Die Literalzeichenfolge
\}steht für.}Die Literalzeichenfolge
\\steht für.\
In JSON müssen Backslashes, die in einem Zeichenfolgenliteralwert enthalten sind, mit einem anderen Backslash maskiert werden. Die entsprechende Liste für JSON lautet:
-
Die maskierte Zeichenfolge
\\\'steht für\'. -
Die maskierte Zeichenfolge
\\\{steht für\{. -
Die maskierte Zeichenfolge
\\\}steht für\}. -
Die maskierte Zeichenfolge
\\\\steht für\\.
Anmerkung
Wenn in der systemeigenen Aufrufzeichenfolge ein offener Escape-Backslash gefunden \ wird, gibt der Interpreter einen Laufzeitfehler zurück.
Sie müssen eckige Klammern für einen Pfad verwenden, der als Argument an eine systeminterne Funktion übergeben wird, wenn der Feldname ein Zeichen enthält, das nicht in der Definition der ABNF-Regel enthalten ist. member-name-shorthand JsonPath _ Klammern verwenden. Beispiel, $.abc.['def ghi'].