View a markdown version of this page

Verwenden Sie Zeichenkettenfunktionen in Formelausdrücken - AWS IoT SiteWise

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.

Verwenden Sie Zeichenkettenfunktionen in Formelausdrücken

In Transformationen und Metriken können Sie die folgenden Funktionen verwenden, um mit Zeichenketten zu arbeiten. Weitere Informationen finden Sie unter Verwenden Sie Zeichenketten in Formeln.

Wichtig

Formelausdrücke können nur Doppel- oder Zeichenfolgenwerte ausgeben. Verschachtelte Ausdrücke können andere Datentypen ausgeben, z. B. Zeichenketten, aber die Formel als Ganzes muss zu einer Zahl oder Zeichenfolge ausgewertet werden. Sie können die Funktion jp verwenden, um eine Zeichenfolge in eine Zahl zu konvertieren. Der boolesche Wert muss 1 (wahr) oder 0 (falsch) sein. Weitere Informationen finden Sie unter Undefinierte, unendliche und Überlaufwerte.

Funktion Description

len(s)

Gibt die Länge der Zeichenfolge zurück. s

find(s, substring)

Gibt den Index der Zeichenfolge substring in der Zeichenfolge zurücks.

contains(s, substring)

Gibt zurück1, ob die Zeichenfolge die Zeichenfolge s enthältsubstring, andernfalls0.

upper(s)

Gibt die Zeichenfolge s in Großbuchstaben zurück.

lower(s)

Gibt die Zeichenfolge s in Kleinbuchstaben zurück.

jp(s, json_path)

Wertet die Zeichenfolge s mit dem JsonPath Ausdruck aus json_path und gibt das Ergebnis zurück.

Verwenden Sie diese Funktion, um Folgendes zu tun:

  • Extrahieren Sie einen Wert, ein Array oder ein Objekt aus einer serialisierten JSON-Struktur.

  • Konvertiert eine Zeichenfolge in eine Zahl. Die Formel wird beispielsweise 111 als Zahl jp('111', '$') zurückgegeben.

Um einen Zeichenkettenwert aus einer JSON-Struktur zu extrahieren und als Zahl zurückzugeben, müssen Sie mehrere verschachtelte jp Funktionen verwenden. Die äußere jp Funktion extrahiert die Zeichenfolge aus der JSON-Struktur, und die innere jp Funktion konvertiert die Zeichenfolge in eine Zahl.

Die Zeichenfolge json_path muss ein Zeichenkettenliteral enthalten. Das bedeutet, dass es json_path sich nicht um einen Ausdruck handeln kann, der zu einer Zeichenfolge ausgewertet wird.

Beispiel Beispiele
  • jp('{"status":"active","value":15}', '$.value') gibt 15 zurück.

  • jp('{"measurement":{"reading":25,"confidence":0.95}}', '$.measurement.reading') gibt 25 zurück.

  • jp('[2,8,23]', '$[2]') gibt 23 zurück.

  • jp('{"values":[3,6,7]}', '$.values[1]') gibt 6 zurück.

  • jp('111', '$') gibt 111 zurück.

  • jp(jp('{"measurement":{"reading":25,"confidence":"0.95"}}', '$.measurement.confidence'), '$') gibt 0.95 zurück.

join(s0, s1, s2, s3, ...)

Gibt eine verkettete Zeichenfolge mit einem Trennzeichen zurück. Diese Funktion verwendet die erste Eingabezeichenfolge als Trennzeichen und verbindet die verbleibenden Eingabezeichenfolgen miteinander. Dies verhält sich ähnlich wie die Join-Funktion (CharSequence Trennzeichen, CharSequence... Elemente) in Java.

Beispiel Beispiele
  • join("-", "aa", "bb", "cc")kehrt zurück aa-bb-cc

format(expression: "format") oder format("format", expression)

Gibt eine Zeichenfolge im angegebenen Format zurück. Diese Funktion ergibt expression einen Wert und gibt dann den Wert im angegebenen Format zurück. Dies verhält sich ähnlich wie die https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#format-java.lang.String-java.lang.Object...- Formatfunktion (String-Format, Object... args) in Java. Weitere Informationen zu unterstützten Formaten finden Sie unter Konvertierungen unter Class Formatter in der API-Spezifikation der Java Platform, Standard Edition 7.

Beispiel Beispiele
  • format(100+1: "d")gibt eine Zeichenfolge zurück,101.

  • format("The result is %d", 100+1)gibt eine Zeichenfolge zurück,The result is 101.

f'expression'

Gibt eine verkettete Zeichenfolge zurück. Mit dieser formatierten Funktion können Sie einen einfachen Ausdruck verwenden, um Zeichenketten zu verketten und zu formatieren. Diese Funktionen können verschachtelte Ausdrücke enthalten. Sie können {} (geschweifte Klammern) verwenden, um Ausdrücke zu interpolieren. Dies verhält sich ähnlich wie die formatierten Zeichenfolgenliterale in Python.

Beispiel Beispiele
  • f'abc{1+2: "f"}d' gibt abc3.000000d zurück. Gehen Sie wie folgt vor, um diesen Beispielausdruck auszuwerten:

    1. format(1+2: "f")gibt eine Gleitkommazahl zurück,3.000000.

    2. join('', "abc", 1+2, 'd')gibt eine Zeichenfolge zurück,abc3.000000d.

    Sie können den Ausdruck auch auf folgende Weise schreiben:join('', "abc", format(1+2: "f"), 'd').