String-Literale in Ausdrücken verwenden

Ein String-Literal ist ein Anführungszeichen, gefolgt von Text und einem abschließenden Anführungszeichen. Escape-Sequenzen helfen dem Autor des Ausdrucks, Zeichenkonflikte innerhalb eines String-Literales zu lösen In diesem Artikel, der aus der Sicht des Entwicklers geschrieben ist, wird die Verwendung von String-Literalen in Ausdrücken erläutert. 

Zur Laufzeit wird der folgende Ausdruck zu der Zeichenkette Hello Worldausgewertet.

Append("Hello", " ", "World")

Jede in Anführungszeichen eingeschlossene Zeichenfolge ist ein Zeichenfolgenliteral:

  • "Hallo"
  • ” ”
  • "Welt"

Um eine Zeichenkette zu vervollständigen, muss der Autor eines Ausdrucks in der Regel nur den gewünschten Text zwischen dem Anführungszeichen am Anfang und dem Anführungszeichen am Ende eingeben. Zum Beispiel:

"Genesys Cloud"

Aber was passiert, wenn der Autor ein Stringliteral für den Wert erstellen möchte. Er sagte: "Hallo"? Wenn Sie wie oben beschrieben vorgehen und ein String-Literal mit einem Anführungszeichen am Anfang, Text und einem Anführungszeichen am Ende konstruieren, lautet Ihr Ausdruck:

"He said, "Hi""

Das gewünschte Literal ist Er sagte: "Hallo", aber das Zeichenfolgenliteral ist ein Anführungszeichen, gefolgt von Text und dann einem abschließenden Anführungszeichen. Wenn man sich den obigen Text anschaut, ist das Zeichenfolgenliteral eigentlich "He said, " gefolgt von anderem Text Wir möchten jedoch, dass der in Anführungszeichen gesetzte Text von "Hi" auch Teil des String-Literales ist. Leider wird das Anführungszeichen, das dem Wort Hi vorangestellt ist, tatsächlich zum abschließenden Anführungszeichen, und das Zeichenfolgenliteral endet dort Wie können wir also den Text als Teil des String-Literal auflösen? Verwenden Sie eine Escape-Sequenz.

Um den Konflikt im obigen Beispiel zu lösen, wenden Sie eine Escape-Sequenz auf das Anführungszeichen innerhalb des Zeichenfolgenliteral an. Diese Aktion weist den Parser des Ausdrucks in Architect an, das Anführungszeichen als literales Anführungszeichen innerhalb des Zeichenkettenliters zu behandeln, nicht als endendes Anführungszeichen. Einen Escape-Sequenz wird durch einen Backslash (\) gekennzeichnet. Wenden Sie es auf die Er sagte: "Hallo" wörtlich wie folgt an::

"He said, \"Hi\""

Zur Laufzeit wertet Architect den Text zu der Zeichenfolge He said, "Hi" aus

Betrachten Sie nun das folgende Beispiel: Männlich und weiblich. In diesem Fall sieht das Zeichenfolgenliteral, wenn es in einem Ausdruck verwendet wird, wie folgt aus:

"Male\\Female"

Diese Tabelle zeigt die Zeichen, für die Architect eine Escape-Sequenz hat:

Zeichen Escape-Sequenz
Anführungszeichen (") \”
Backslash (\) \\
Registerkarte \t
Neue Linie \n
Rückführung des Wagens \r

Die folgenden Beispiele zeigen, wie Escape-Sequenzen in String-Literalen verwendet werden.

Beispiel

  • Fügen Sie die folgende Zeichenfolge in ein Zeichenfolgenliteral ein:
  • He said, "I like the 24 hour clock because you don't have to deal with AM \ PM settings"

Beantworten

  • "He said, \"I like the 24 hour clock because you don't have to deal with AM \\ PM settings\""

Beispiel

  • Dieses Beispiel enthält mehrere Zeichen, die eine Escape-Sequenz erfordern:
  • ""\\.#&."<tab character>"
  • Tipp: Beginnen Sie mit einem Anführungszeichen und gehen Sie die Zeichenkette Zeichen für Zeichen durch, indem Sie die entsprechende Escape-Sequenz für die benötigten Zeichen hinzufügen, gefolgt von einem schließenden Anführungszeichen.
  • Die Adresse <tab character=""> sollte ein echtes Tabulatorzeichen sein, nicht der Text <tab character="">

Beantworten

  • "\"\"\\\\.#&.\"\t\""