Zeichenkettenfunktionen
Zeichenkettenfunktionen fuehren Operationen auf Text- und Zeichenkettenwerten aus. Die meisten Zeichenkettenfunktionen geben einen Zeichenketten-Datentyp zurueck, obwohl einige (wie Length und Find) Zahlen zurueckgeben und andere (wie IsNullOrEmpty) Boolesche Werte zurueckgeben. Wenn Nicht-Zeichenkettenwerte an diese Funktionen uebergeben werden, werden sie automatisch als Zeichenketten interpretiert.
LCase-Funktion
Die LCase-Funktion wandelt alle Grossbuchstaben in einer Zeichenkette in Kleinbuchstaben um. Nicht-alphabetische Zeichen bleiben unveraendert.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
LCase(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Der Zeichenkettenausdruck, der in Kleinbuchstaben umgewandelt werden soll. |
Beispiele
-
Eine Zeichenkette mit gemischter Gross-/Kleinschreibung in Kleinbuchstaben umwandeln:
LCase("Hello WORLD")
Ergebnis: "hello world"
-
E-Mail-Adressen zum Vergleich normalisieren:
LCase(|->[Email])
Wenn Email = "John.Doe@Example.COM":
Ergebnis: "john.doe@example.com"
-
Einen URL-Slug in Kleinbuchstaben aus einem Namen erstellen:
LCase(FindAndReplace(|->[ProductName], " ", "-"))
Wenn ProductName = "Premium Widget":
Ergebnis: "premium-widget"
UCase-Funktion
Die UCase-Funktion wandelt alle Kleinbuchstaben in einer Zeichenkette in Grossbuchstaben um. Nicht-alphabetische Zeichen bleiben unveraendert.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
UCase(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Der Zeichenkettenausdruck, der in Grossbuchstaben umgewandelt werden soll. |
Beispiele
-
Eine Zeichenkette mit gemischter Gross-/Kleinschreibung in Grossbuchstaben umwandeln:
UCase("Hello WORLD")
Ergebnis: "HELLO WORLD"
-
Eine Staatskuerzung formatieren:
UCase(|->[State])
Wenn State = "ca":
Ergebnis: "CA"
-
Eine Kopfzeile in Grossbuchstaben aus Empfaengerdaten erstellen:
UCase(|->[LastName]) & ", " & |->[FirstName]
Wenn LastName = "Smith" und FirstName = "John":
Ergebnis: "SMITH, John"
TCase-Funktion
Die TCase-Funktion wandelt den ersten Buchstaben jedes Wortes in einen Grossbuchstaben und alle uebrigen Buchstaben in Kleinbuchstaben um (Ueberschriftenstil). Dies ist nuetzlich zum Normalisieren von Namen und Titeln mit inkonsistenter Gross-/Kleinschreibung.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
TCase(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Der Zeichenkettenausdruck, der in Ueberschriftenstil umgewandelt werden soll. |
Beispiele
-
Eine Zeichenkette mit gemischter Gross-/Kleinschreibung in Ueberschriftenstil umwandeln:
TCase("Hello WORLD")
Ergebnis: "Hello World"
-
Den Namen eines Empfaengers normalisieren:
TCase(|->[FirstName] & " " & |->[LastName])
Wenn FirstName = "JOHN" und LastName = "DOE":
Ergebnis: "John Doe"
-
Einen Staedtenamen aus Daten in Grossbuchstaben formatieren:
TCase(|->[City])
Wenn City = "NEW YORK":
Ergebnis: "New York"
-
Eine korrekt formatierte Adresszeile erstellen:
TCase(|->[Street] & ", " & |->[City]) & ", " & UCase(|->[State])
Wenn Street = "123 MAIN STREET", City = "BOSTON", State = "ma":
Ergebnis: "123 Main Street, Boston, MA"
Length-Funktion
Die Length-Funktion gibt die Anzahl der Zeichen in einer Zeichenkette zurueck, einschliesslich Leerzeichen, Satzzeichen und Sonderzeichen.
Diese Funktion gibt einen Zahl-Datentyp zurueck.
Syntax
Length(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Der Zeichenkettenausdruck, dessen Laenge berechnet werden soll. |
Beispiele
-
Die Laenge einer Zeichenkette ermitteln:
Length("Hello WORLD")
Ergebnis: 11
-
Pruefen, ob ein Feld eine maximale Laenge ueberschreitet:
If(Length(|->[Comments]) > 100) {"Comment truncated"} else {|->[Comments]}
Wenn die Laenge von Comments ueber 100 Zeichen betraegt:
Ergebnis: "Comment truncated" wird angezeigt.
Wenn die Laenge von Comments kleiner oder gleich 100 Zeichen ist:
Ergebnis: Der Wert von Comments wird zurueckgegeben.
-
Die erforderliche Auffuellung zur rechtsbuendigen Ausrichtung eines Wertes berechnen:
20 - Length(|->[ProductCode])
Wenn ProductCode = "ABC123":
Ergebnis: 14
-
Ueberpruefen, ob eine Telefonnummer die erwartete Laenge hat:
If(Length(CleanNumber(|->[Phone])) = 10) {"Valid"} else {"Invalid"}
IsNullOrEmpty-Funktion
Die IsNullOrEmpty-Funktion ermittelt, ob eine Zeichenkette null oder leer (Laenge null) ist. Dies ist nuetzlich, um zu pruefen, ob ein Feld Daten enthaelt, bevor es verwendet wird.
Diese Funktion gibt einen Boolesch-Datentyp zurueck.
Syntax
IsNullOrEmpty(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Der Zeichenkettenausdruck, der auf Null- oder Leerwert geprueft werden soll. |
Beispiele
-
Pruefen, ob eine Zeichenkette leer ist:
IsNullOrEmpty("")
Ergebnis: True
IsNullOrEmpty("Hello")
Ergebnis: False
-
Pruefen, ob ein Empfaengerfeld einen Wert enthaelt:
IsNullOrEmpty(|->[MiddleName])
Wenn MiddleName = "":
Ergebnis: True
-
Eine Mittelinitiale bedingt einfuegen:
|->[FirstName] & If(IsNullOrEmpty(|->[MiddleName])) {""} else {" " & SubString(|->[MiddleName], 0, 1) & "."} & " " & |->[LastName]
Wenn FirstName = "John", MiddleName = "Robert", LastName = "Smith":
Ergebnis: "John R. Smith"
-
Einen Standardwert bereitstellen, wenn das Feld leer ist:
If(IsNullOrEmpty(|->[Nickname])) {|->[FirstName]} else {|->[Nickname]}
Wenn FirstName = "John", Nickname = "":
Ergebnis: John
Wenn FirstName = "Janet", Nickname = "Jan":
Ergebnis: Jan
-
Ein Praefix bedingt einfuegen, wenn die Mobilnummer angegeben ist:
if (!IsNullOrEmpty(|->[mobile]))
{
"Mobile: " & |->[mobile]
}
else
{
""
}Wenn mobile = "(123) 555-1234":
Ergebnis: "Mobile: (123) 555-1234"
Wenn mobile = "":
Ergebnis: ""
SubString-Funktion
Die SubString-Funktion extrahiert einen Teil einer Zeichenkette basierend auf einer Startposition und einer Zeichenanzahl. Dies ist nuetzlich zum Extrahieren bestimmter Teile einer Zeichenkette.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
SubString(exprAsString, startPosition, characterCount)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, aus der Zeichen extrahiert werden sollen. |
|
startPosition |
Erforderlich. Die nullbasierte Startposition (0 = erstes Zeichen). |
|
characterCount |
Erforderlich. Die Anzahl der zu extrahierenden Zeichen. Verwenden Sie -1, um alle verbleibenden Zeichen ab der Startposition zu extrahieren. |
Beispiele
-
Die ersten 5 Zeichen extrahieren:
SubString("Hello WORLD", 0, 5)
Ergebnis: "Hello"
-
Zeichen aus der Mitte einer Zeichenkette extrahieren:
SubString("Hello WORLD", 6, 5)
Ergebnis: "WORLD"
-
Alle Zeichen ab einer Position bis zum Ende extrahieren:
SubString("Hello WORLD", 6, -1)
Ergebnis: "WORLD"
-
Die erste Initiale eines Namens ermitteln:
SubString(|->[FirstName], 0, 1)
Wenn FirstName = "John":
Ergebnis: "J"
-
Die Vorwahl aus einer Telefonnummer extrahieren:
SubString(CleanNumber(|->[Phone]), 0, 3)
Wenn Phone = "(555) 123-4567":
Ergebnis: "555"
-
Den ersten Satz aus einem Kommentar zurueckgeben, indem der gesamte Text von der Startposition (0) bis zur Position des ersten Punktes (.) ausgewaehlt wird:
SubString(|->[comment], 0, Find(|->[comment], ".", 0) + 1)
Wenn comment = "Etiam justo. Etiam pretium iaculis justo. In hac habitasse platea dictumst. Etiam faucibus cursus urna.":
Ergebnis: "Etiam justo."
Trim-Funktion
Die Trim-Funktion entfernt Leerraumzeichen (Leerzeichen, Tabulatoren) sowohl am Anfang als auch am Ende einer Zeichenkette. Leerraum innerhalb der Zeichenkette wird nicht beeinflusst.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
Trim(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, aus der fuehrende und nachfolgende Leerraumzeichen entfernt werden sollen. |
Beispiele
-
Leerraumzeichen an beiden Enden entfernen:
Trim(" Hello WORLD ")
Ergebnis: "Hello WORLD"
-
Empfaengerdaten bereinigen, die moeglicherweise zusaetzliche Leerzeichen enthalten:
Trim(|->[FirstName] & " " & |->[LastName])
Wenn FirstName = " John " und LastName = " Smith ":
Ergebnis: "John Smith"
-
Saubere Daten vor einem Vergleich sicherstellen:
If(Trim(|->[Status]) = "Active") {"Yes"} else {"No"}
LTrim-Funktion
Die LTrim-Funktion entfernt Leerraumzeichen nur am Anfang (linke Seite) einer Zeichenkette. Nachfolgende Leerraumzeichen bleiben erhalten.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
LTrim(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, aus der fuehrende Leerraumzeichen entfernt werden sollen. |
Beispiele
-
Nur fuehrende Leerraumzeichen entfernen:
LTrim(" Hello WORLD ")
Ergebnis: "Hello WORLD "
-
Links aufgefuellte Daten bereinigen:
LTrim(|->[AccountNumber])
Wenn AccountNumber = " 12345":
Ergebnis: "12345"
RTrim-Funktion
Die RTrim-Funktion entfernt Leerraumzeichen nur am Ende (rechte Seite) einer Zeichenkette. Fuehrende Leerraumzeichen bleiben erhalten.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
RTrim(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, aus der nachfolgende Leerraumzeichen entfernt werden sollen. |
Beispiele
-
Nur nachfolgende Leerraumzeichen entfernen:
RTrim(" Hello WORLD ")
Ergebnis: " Hello WORLD"
-
Rechts aufgefuellte Daten mit fester Breite bereinigen:
RTrim(|->[Description])
Wenn Description = "Widget ":
Ergebnis: "Widget"
Find-Funktion
Die Find-Funktion sucht nach einer Teilzeichenkette innerhalb einer Zeichenkette und gibt deren nullbasierte Position zurueck. Wenn die Teilzeichenkette nicht gefunden wird, gibt die Funktion -1 zurueck. Die Suche ist zwischen Gross- und Kleinschreibung unterscheidend.
Diese Funktion gibt einen Zahl-Datentyp zurueck.
Syntax
Find(exprAsString, searchString, startPosition)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, in der gesucht werden soll. |
|
searchString |
Erforderlich. Die zu suchende Teilzeichenkette. |
|
startPosition |
Erforderlich. Die nullbasierte Position, an der die Suche beginnen soll. |
Beispiele
-
Die Position einer Teilzeichenkette finden:
Find("Hello WORLD", "WORLD", 0)
Ergebnis: 6
-
Die Suche unterscheidet zwischen Gross- und Kleinschreibung:
Find("Hello WORLD", "world", 0)
Ergebnis: -1 (nicht gefunden)
-
Pruefen, ob eine Zeichenkette einen bestimmten Wert enthaelt:
If(Find(|->[Email], "@", 0) > -1) {"Found @ symbol"} else {"Missing @ symbol"}
-
Das zweite Vorkommen finden, indem nach dem ersten gestartet wird:
Find("apple,banana,apple", "apple", 1)
Ergebnis: 13
-
Die Domain aus einer E-Mail-Adresse extrahieren:
SubString(|->[Email], Find(|->[Email], "@", 0) + 1, -1)
Wenn Email = "john@example.com":
Ergebnis: "example.com"
Replace-Funktion
Die Replace-Funktion ersetzt eine angegebene Anzahl von Zeichen an einer bestimmten Position durch eine neue Zeichenkette. Dies ist nuetzlich zum Einfuegen oder Ueberschreiben von Zeichen an bestimmten Positionen innerhalb einer Zeichenkette.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
Replace(exprAsString, insertString, startPosition, charactersToReplace)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die urspruengliche Zeichenkette, die geaendert werden soll. |
|
insertString |
Erforderlich. Die Zeichenkette, die an der angegebenen Position eingefuegt werden soll. |
|
startPosition |
Erforderlich. Die nullbasierte Position, an der mit dem Ersetzen begonnen werden soll. |
|
charactersToReplace |
Erforderlich. Die Anzahl der zu entfernenden Zeichen vor dem Einfuegen. Verwenden Sie 0, um ohne Entfernen einzufuegen. |
Beispiele
-
Zeichen an einer bestimmten Position ersetzen:
Replace("Hello WORLD", "UNIVERSE", 6, 5)
Ergebnis: "Hello UNIVERSE"
-
Zeichen einfuegen, ohne welche zu entfernen (charactersToReplace auf 0 setzen):
Replace("HelloWorld", " ", 5, 0)
Ergebnis: "Hello World"
-
Einen Teil einer Kreditkartennummer maskieren:
Replace(|->[CardNumber], "****-****-****-", 0, 15)
Wenn CardNumber = "1234-5678-9012-3456":
Ergebnis: "****-****-****-3456"
FindAndReplace-Funktion
Die FindAndReplace-Funktion sucht nach allen Vorkommen einer Teilzeichenkette und ersetzt sie durch einen neuen Wert. Die Suche unterscheidet zwischen Gross- und Kleinschreibung.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
FindAndReplace(exprAsString, searchString, replacementString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, in der gesucht werden soll. |
|
searchString |
Erforderlich. Die zu suchende Teilzeichenkette. |
|
replacementString |
Erforderlich. Die Zeichenkette, durch die jedes Vorkommen ersetzt werden soll. |
Beispiele
-
Ein Wort in einer Zeichenkette ersetzen:
FindAndReplace("Hello WORLD", "WORLD", "UNIVERSE")
Ergebnis: "Hello UNIVERSE"
-
Eine Teilzeichenkette entfernen, indem sie durch eine leere Zeichenkette ersetzt wird:
FindAndReplace("Hello WORLD", " WORLD", "")
Ergebnis: "Hello"
-
Leerzeichen fuer eine URL durch Bindestriche ersetzen:
FindAndReplace(|->[ProductName], " ", "-")
Wenn ProductName = "Premium Widget Set":
Ergebnis: "Premium-Widget-Set"
-
Daten durch Ersetzen von Abkuerzungen standardisieren:
FindAndReplace(FindAndReplace(|->[Address], "St.", "Street"), "Ave.", "Avenue")
-
Ein Waehrungssymbol vor der numerischen Konvertierung entfernen:
AsNumber(FindAndReplace(|->[Price], "$", ""))
Wenn Price = "$99.99":
Ergebnis: 99.99
FindAndReplaceChars-Funktion
Die FindAndReplaceChars-Funktion ersetzt alle Instanzen eines beliebigen Zeichens aus einem angegebenen Zeichensatz durch eine Ersatzzeichenkette. Im Gegensatz zu FindAndReplace behandelt diese Funktion den Suchparameter als einzelne Zeichen und nicht als Teilzeichenkette.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
FindAndReplaceChars(exprAsString, charactersToReplace, replacementString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, in der gesucht werden soll. |
|
charactersToReplace |
Erforderlich. Eine Zeichenkette, die alle zu ersetzenden Zeichen enthaelt (jedes Zeichen wird einzeln behandelt). |
|
replacementString |
Erforderlich. Die Zeichenkette, durch die jedes uebereinstimmende Zeichen ersetzt werden soll. |
Beispiele
-
Formatierungszeichen aus einer Telefonnummer entfernen:
FindAndReplaceChars(|->[Phone], "()- ", "")
Wenn Phone = "(555) 123-4567":
Ergebnis: "5551234567"
-
Satzzeichen entfernen:
FindAndReplaceChars("Hello, World! How are you?", ",.!?", "")
Ergebnis: "Hello World How are you"
-
Einen Dateinamen durch Ersetzen ungueltiger Zeichen bereinigen:
FindAndReplaceChars(|->[FileName], "/\\:*?\"<>|", "_")
Wenn FileName = "Report: Q1/Q2":
Ergebnis: "Report_ Q1_Q2"
-
Vokale aus einer Zeichenkette entfernen:
FindAndReplaceChars("Hello World", "aeiouAEIOU", "")
Ergebnis: "Hll Wrld"
FindByRegExp-Funktion
Die FindByRegExp-Funktion durchsucht eine Zeichenkette mithilfe eines regulaeren Ausdrucks und gibt den uebereinstimmenden Text zurueck. Dies bietet leistungsstarke Mustererkennungsfunktionen fuer die Extraktion komplexer Texte.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
FindByRegExp(exprAsString, regExpPattern, firstMatchOnly)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, in der gesucht werden soll. |
|
regExpPattern |
Erforderlich. Das Muster des regulaeren Ausdrucks, nach dem gesucht werden soll. |
|
firstMatchOnly |
Erforderlich. Setzen Sie auf True, um nur die erste Uebereinstimmung zurueckzugeben, oder auf False, um alle Uebereinstimmungen verkettet zurueckzugeben. |
Hinweis: Die verwendete Grammatik fuer regulaere Ausdruecke ist ECMA-262 unter Windows mit Aenderungen und Extended auf Macintosh.
Beispiele
-
Das erste Wort aus einer Zeichenkette extrahieren:
FindByRegExp("Hello WORLD", "[A-Za-z]+", True)
Ergebnis: "Hello"
-
Eine E-Mail-Adresse aus Text extrahieren:
FindByRegExp(|->[Notes], "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}", True)
Wenn Notes = "Contact me at john@example.com for details":
Ergebnis: "john@example.com"
-
Alle Zahlen aus einer Zeichenkette extrahieren:
FindByRegExp("Order 123 has 5 items", "[0-9]+", False)
Ergebnis: "1235"
-
Eine Postleitzahl aus einer Adresse extrahieren:
FindByRegExp(|->[Address], "[0-9]{5}(-[0-9]{4})?", True)
Wenn Address = "123 Main St, Boston, MA 02101-1234":
Ergebnis: "02101-1234"
FindAndReplaceByRegExp-Funktion
Die FindAndReplaceByRegExp-Funktion sucht nach Text, der mit einem regulaeren Ausdrucksmuster uebereinstimmt, und ersetzt ihn durch eine angegebene Zeichenkette. Dies bietet leistungsstarke musterbasierte Suchen-und-Ersetzen-Funktionen.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
FindAndReplaceByRegExp(exprAsString, regExpPattern, replacementString, firstMatchOnly)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, in der gesucht werden soll. |
|
regExpPattern |
Erforderlich. Das Muster des regulaeren Ausdrucks, nach dem gesucht werden soll. |
|
replacementString |
Erforderlich. Die Zeichenkette, durch die jede Uebereinstimmung ersetzt werden soll. |
|
firstMatchOnly |
Erforderlich. Setzen Sie auf True, um nur die erste Uebereinstimmung zu ersetzen, oder auf False, um alle Uebereinstimmungen zu ersetzen. |
Beispiele
-
Das erste Wort in einer Zeichenkette ersetzen:
FindAndReplaceByRegExp("Hello WORLD", "[A-Za-z]+", "Hi", True)
Ergebnis: "Hi WORLD"
-
Alle Ziffern aus einer Zeichenkette entfernen:
FindAndReplaceByRegExp("abc123def456", "[0-9]+", "", False)
Ergebnis: "abcdef"
-
Alle E-Mail-Adressen in einem Text maskieren:
FindAndReplaceByRegExp(|->[Comments], "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}", "[email hidden]", False)
-
Nicht-Ziffern aus einer formatierten Telefonnummer entfernen:
FindAndReplaceByRegExp(|->[Phone], "[^0-9]", "", False)
Wenn Phone = "+1 (555) 123-4567":
Ergebnis: "15551234567"
-
Mehrere Leerzeichen durch ein einzelnes Leerzeichen ersetzen:
FindAndReplaceByRegExp("Hello World", " +", " ", False)
Ergebnis: "Hello World"
CleanNumber-Funktion
Die CleanNumber-Funktion entfernt alle Nicht-Ziffern-Zeichen aus einer Zeichenkette und behaelt nur die Ziffern 0-9. Dies ist nuetzlich zum Bereinigen von Telefonnummern, Kontonummern oder anderen numerischen Daten, die Formatierungszeichen enthalten koennen.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck (keine Zahl), wodurch fuehrende Nullen erhalten bleiben und Sequenzen laenger als 14 Stellen moeglich sind.
Syntax
CleanNumber(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, aus der Ziffern extrahiert werden sollen. |
Beispiele
-
Formatierung aus einer Telefonnummer entfernen:
CleanNumber("+1 888-452-1111")
Ergebnis: "18884521111"
-
Eine formatierte Sozialversicherungsnummer bereinigen:
CleanNumber("123-45-6789")
Ergebnis: "123456789"
-
Ziffern aus einem Waehrungswert extrahieren:
CleanNumber("$1,234.56")
Ergebnis: "123456"
-
Eine Telefonnummer zur Neuformatierung vorbereiten:
FormatNumber(CleanNumber(|->[Phone]), "(###) ###-####")
Wenn Phone = "555.123.4567":
Ergebnis: "(555) 123-4567"
Hinweis 1: Da CleanNumber eine Zeichenkette zurueckgibt, kann die Funktion Zahlen verarbeiten, die laenger als 14 Stellen sind (die Grenze fuer numerische Berechnungen in QLingo). Dies macht sie geeignet fuer Telefonnummern, Kreditkartennummern und andere lange numerische Kennungen.
Hinweis 2: CleanNumber entfernt Tausendertrennzeichen und Dezimalstellen!
CleanRecipientKey-Funktion
Die CleanRecipientKey-Funktion entfernt oder ersetzt Zeichen, die in URLs und Empfaengerschluesseln nicht sicher sind. Dazu gehoeren Leerzeichen, Anfuehrungszeichen, Doppelpunkte und andere Sonderzeichen, die Probleme in personalisierten URLs (PURLs) verursachen koennen.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
CleanRecipientKey(exprAsString [, replaceInvalidWith])
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, die zur Verwendung als Empfaengerschluessel bereinigt werden soll. |
|
replaceInvalidWith |
Optional. Die Zeichenkette, durch die ungueltige Zeichen ersetzt werden sollen. Wenn nicht angegeben, werden ungueltige Zeichen entfernt. |
Beispiele
-
Leerzeichen durch Unterstriche ersetzen:
CleanRecipientKey("John Michael.Smith", "_")
Ergebnis: "John_Michael.Smith"
-
Ungueltige Zeichen vollstaendig entfernen:
CleanRecipientKey("John's Key: 123")
Ergebnis: "JohnsKey123"
-
Einen sauberen PURL-Schluessel aus dem Empfaengernamen erstellen:
CleanRecipientKey(|->[FirstName] & |->[LastName] & |->[ID], "-")
Wenn FirstName = "John", LastName = "O'Brien", ID = "123":
Ergebnis: "JohnO-Brien123"
-
Einen URL-sicheren Bezeichner generieren:
LCase(CleanRecipientKey(|->[CompanyName], "-"))
Wenn CompanyName = "Acme & Sons, Inc.":
Ergebnis: "acme---sons--inc."
SecureID-Funktion
Die SecureID-Funktion generiert einen eindeutigen, kryptografisch sicheren Bezeichner, der nicht erraten werden kann. Dies ist nuetzlich zum Erstellen sicherer Empfaengerschluessel fuer personalisierte URLs, bei denen Vorhersagbarkeit ein Sicherheitsrisiko darstellen wuerde.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
SecureID()
Diese Funktion nimmt keine Parameter entgegen.
Beispiele
-
Einen sicheren Bezeichner generieren:
SecureID()
Ergebnis: "5ADCF67B419A4AD796DA4458D25A038E" (Beispiel - der tatsaechliche Wert variiert)
-
Eine sichere PURL fuer sensible Anwendungen erstellen:
"https://example.com/offer/" & SecureID()
Ergebnis: "https://example.com/offer/5ADCF67B419A4AD796DA4458D25A038E"
-
Mit Empfaengerdaten kombinieren, um einen nachverfolgbaren, aber sicheren Schluessel zu erstellen:
|->[CustomerID] & "-" & SecureID()
Wenn CustomerID = "C1001":
Ergebnis: "C1001-5ADCF67B419A4AD796DA4458D25A038E"
Hinweis: Im Gegensatz zu sequenziellen IDs oder IDs, die auf Empfaengerdaten basieren, koennen SecureID-Werte nicht vorhergesagt oder aufgezaehlt werden. Dies verhindert unberechtigten Zugriff auf personalisierte Inhalte durch das Erraten von URLs.
HexToUnicode-Funktion
Die HexToUnicode-Funktion wandelt Hexadezimalwerte in die entsprechenden Unicode-Zeichen um. Dies ist nuetzlich zum Einfuegen von Sonderzeichen, Symbolen oder Zeichen aus nicht-lateinischen Schriften.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
HexToUnicode(exprAsHexString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsHexString |
Erforderlich. Eine Zeichenkette aus hexadezimalen Zeichen. Gruppen von vier Zeichen repraesentieren ein Unicode-Zeichen. Kuerzere Gruppen werden mit fuehrenden Nullen aufgefuellt. |
Beispiele
-
Das Euro-Symbol einfuegen:
HexToUnicode("20AC")
Ergebnis: "€"
-
Das Copyright-Symbol einfuegen:
HexToUnicode("00A9")
Ergebnis: "©"
-
Ein Markenzeichen-Symbol einfuegen:
HexToUnicode("2122")
Ergebnis: "™"
-
Einen formatierten Preis mit Waehrungssymbol erstellen:
HexToUnicode("00A3") & FormatNumber(|->[Price], "#,##0.00")
Wenn Price = 1234.56:
Ergebnis: "£1,234.56"
-
Mehrere Zeichen einfuegen:
HexToUnicode("00A9002000AE")
Ergebnis: "© ®" (Copyright, Leerzeichen, eingetragenes Markenzeichen)
HtmlEncode-Funktion
Die HtmlEncode-Funktion kodiert Sonderzeichen mithilfe der Prozentkodierung (URL-Kodierung). Dadurch werden Zeichen, die in URLs nicht sicher sind, in ihre hexadezimalen %XX-Aequivalente umgewandelt.
Diese Funktion gibt einen Zeichenketten-Datentyp zurueck.
Syntax
HtmlEncode(exprAsString)
|
Parameter |
Beschreibung |
|---|---|
|
exprAsString |
Erforderlich. Die Zeichenkette, die fuer die sichere Verwendung in URLs kodiert werden soll. |
Beispiele
-
Eine Zeichenkette mit Sonderzeichen kodieren:
HtmlEncode("John&Mary.pdf")
Ergebnis: "John%26Mary.pdf"
-
Leerzeichen in einem URL-Parameter kodieren:
HtmlEncode("Hello World")
Ergebnis: "Hello%20World"
-
Eine sichere URL mit Empfaengerdaten erstellen:
"https://example.com/search?name=" & HtmlEncode(|->[FullName])
Wenn FullName = "John O'Brien":
Ergebnis: "https://example.com/search?name=John%20O%27Brien"
-
Einen Dateipfad fuer eine Download-URL kodieren:
"https://example.com/download/" & HtmlEncode(|->[FileName])
Wenn FileName = "Report Q1 2024.pdf":
Ergebnis: "https://example.com/download/Report%20Q1%202024.pdf"
Weitere Themen
-
Konvertierfunktionen - Funktionen zur Konvertierung zwischen Datentypen
-
Numerische Funktionen - Funktionen fuer mathematische Operationen
-
Datumsfunktionen - Funktionen fuer Datums- und Zeitoperationen