Eine String-Funktion führt Operationen mit Textdaten durch. Mit einer String-Funktion können Sie Daten bereinigen, Daten in ein anderes Format konvertieren oder zwischen Groß- und Kleinschreibung wechseln, Metriken zu den Daten berechnen oder andere Änderungen vornehmen. Verwenden Sie Zeichenfolgenfunktionen nur mit Zeichenfolgen- Datentypen .
Contains(String, Target, CaseInsensitive=1
): sucht nach dem Vorkommen einer bestimmten Zeichenfolge innerhalb einer Zeichenfolge. Gibt True zurück, wenn (String) (Target) enthält und andernfalls False.
Contains('123ABC', 'ABC')
gibt „True“ zurück.
Contains('123ABC', 'abc')
gibt „True“ zurück.
Contains('123ABC', 'abc', 0)
gibt „False“ zurück.
CountWords(string)
: gibt die Anzahl der Wörter in der angegebenen Zeichenfolge zurück. Wörter werden durch Zeichen definiert, die durch ein Leerzeichen getrennt sind.
CountWords("Basic Variables Households")
gibt 3 zurück.
CountWords("Basic Variables Age:Female (Pop)Age 1")
gibt 5 zurück.
DecomposeUnicodeForMatch(String)
: entfernt Akzente und erweitert zusammengesetzte Zeichen bei der Umwandlung in eine schmale Zeichenfolge. Diese Funktion verwendet einen Alteryx
WString
-Datentyp und konvertiert ihn in einen Datentyp mit einer kleingeschriebenen, schmalen
Zeichenfolge
. Alle Akzente und andere Dekorationen werden entfernt. Siehe
Datentypen
für weitere Informationen zu Alteryx-Datentypen.
Wichtig
Diese Funktion ist nur für den Abgleich hilfreich. Die Zeichenfolge wird nicht als normalisierte Zeichenfolge betrachtet.
Die Funktion ist nicht für die Verwendung mit nicht-westlichen Zeichensätzen wie Japanisch konzipiert. Sie sollten diese Funktion nicht für Zeichenfolgen verwenden, die breite Zeichen enthalten können, und beachten, dass breite Zeichen in „?“ konvertiert werden.
DecomposeUnicodeForMatch("Prénoms français")
gibt „prenoms francais“ zurück
EndsWith(String, Target, CaseInsensitive=1)
: prüft, ob eine Zeichenfolge mit einer bestimmten Zeichenfolge endet. Gibt „True“ zurück, wenn die Zeichenfolge (String) mit dem Ziel (Target) endet. Gibt anderenfalls „False“ zurück. Standardmäßig wird die Groß- und Kleinschreibung nicht berücksichtigt.
EndsWith('123ABC', 'ABC')
gibt „True“ zurück.
EndsWith('123ABC', 'abc')
gibt „True“ zurück.
EndsWith('123ABC', 'abc', 0)
gibt „False“ zurück.
Wichtig
Bei der Funktion
FindString
wird zwischen Groß- und Kleinschreibung unterschieden.
FindString(String,Target)
: sucht nach dem Vorkommen einer bestimmten Zeichenfolge (Target) innerhalb einer anderen Zeichenfolge (String) und gibt die numerische Position ihres Vorkommens in der Zeichenfolge zurück.
Gibt den 0-basierten Index des ersten Vorkommens von (Target) in (String) zurück. Gibt „-1" zurück, wenn kein Vorkommen vorliegt.
FindString([Name], "John")
returns the 0-indexed position of the first character of the target string if the provided string contains the target and returns -1 when the string does not.
FindString("John Smith", "John")
returns 0. The first character of the target string ("J") is in the 0 position or "John Smith."FindString("Michael John Smith", "John")
returns 8. The first character of the target string ("J") is in the 8 position (0-based index) of "Michael John Smith."FindString("David Smith", "John")
returns -1. The first character of the target string ("J") is not found in string "David Smith."
GetWord(string, n)
: gibt das n-te (0-basierte) Wort in der Zeichenfolge zurück (0-basierter Index bedeutet, dass das erste Wort an der 0-Position steht, das zweite an der 1-Position usw.). Wörter werden als eine Sammlung von Zeichen definiert, die durch ein Leerzeichen, einen Tabulator, einen Zeilenumbruch oder einen eingebetteten Zeilenumbruch getrennt sind. Mehrere Trennzeichen in einer Zeile werden als ein Trennzeichen behandelt.
GetWord("Basic Variables Households", 0)
gibt „Basic“ zurück.
GetWord("Basic Variables Households", 1)
gibt „Variables“ zurück.
Left(String, len)
: gibt die ersten [len] Zeichen der Zeichenfolge (String) zurück. Wenn „len" kleiner als 0 oder größer als die Länge der Zeichenfolge (String) ist, bleibt die Zeichenfolge unverändert.
Left("92688", 3)
gibt den Wert „926“ zurück.
Length(String)
: Gibt die Länge der Zeichenfolge (String) zurück.
Warnung
Längenergebnisse können zwischen dieser Designer-Funktion und SQL-Funktionen abweichen. Dies hängt davon ab, wie eine bestimmte Datenbank breite Zeichen und Zeilenumbrüche verarbeitet. Beispiel: Zeilenumbrüche werden in PostgreSQL nicht als Länge gezählt, während sie in der Designer-Länge-Funktion gezählt werden, und die Ergebnisse in Designer können abweichen, je nachdem, ob der ANSI- oder Unicode-Treiber verwendet wird.
Length("92688")
gibt den Wert „5" zurück.
LowerCase(String)
: konvertiert eine Zeichenfolge in Kleinbuchstaben.
LowerCase("M1P 1G6")
gibt „m1p 1g6“ zurück.
MD5_ASCII(String)
: berechnet den MD5-Hash der Zeichenfolge. Die Zeichenfolge sollte nur schmale Zeichen enthalten. Breite Zeichen werden in „?“ umgewandelt, bevor der Hash berechnet wird. Für String-Typen verwenden, nicht für WString-Typen empfohlen. Sie sollten diese Funktion nicht für Zeichenfolgen verwenden, die breite Zeichen enthalten könnten.
MD5_UNICODE(String)
: berechnet sowohl für die Original-Engine als auch für AMP den MD5-Hash der als UTF-16 gespeicherten Zeichenfolge.
MD5_UTF8(String)
: berechnet den MD5-Hash der als UTF-8 gespeicherten Zeichenfolge.
Md5_Ascii("Lá")
, gespeichert als Latin1, benötigt 2 Bytes, 4C E1. Die Funktion berechnet den MD5 der Bytes und ergibt „0c0ee86cc87d87125ad8923562be952e“.
Md5_Ascii("Lá ☢")
, da ☢ ein breites Zeichen ist, wird es durch ein „?“ ersetzt, so als ob Sie Md5_Ascii("Lá?") berechnen würden. Es wird als Latin1 in 3 Bytes, 4C E1 3F, gespeichert. Die Funktion berechnet den MD5 der Bytes und ergibt „a5a308ab19acf900efea8fc7b5b77b4d“.
Md5_Unicode("Lá")
, gespeichert als UTF-16, benötigt 4 Bytes, 4C 00 E1 00. Die Funktion berechnet den MD5 der Bytes und ergibt „aa9969dfcca04249842cc457e5b3dd01“.
Md5_Unicode("Lá ☢")
, wenn es als UTF-16 gespeichert wird, werden 8 Byte benötigt, 4C 00 E1 00 3C D8 C8 DF. Die Funktion berechnet den MD5 der Bytes und ergibt: "7c4762d93572dd02a8a405232e966b18".
Md5_Utf8("Lá")
, gespeichert als UTF-8, benötigt 3 Bytes, 4C C3 A1. Die Funktion berechnet den MD5 der Bytes und ergibt „68f00289dc3be140b1dfd4e031d733f1“.
Md5_Utf8("Lá ☢")
, wenn als UTF-8 gespeichert, werden 7 Bytes benötigt, 4C C3 A1 F0 9F 8F 88. Die Funktion berechnet den MD5 der Bytes und ergibt „383fc0355db728a2078ce41a2ab6211b“.
PadLeft (String, len, char)
: füllt die Zeichenfolge links mit dem angegebenen Zeichen auf die angegebene Länge auf. Wenn die Auffüllung (char) mehr als ein Zeichen lang ist, wird nur das erste Zeichen verwendet.
PadLeft("M", 4, "x")
gibt „xxxM“ zurück.
PadRight (String, len, char)
: füllt die Zeichenfolge rechts mit dem angegebenen Zeichen auf die angegebene Länge auf. Wenn die Auffüllung (char) mehr als ein Zeichen lang ist, wird nur das erste Zeichen verwendet.
PadRight("M", 4, "x")
gibt „Mxxx“ zurück.
REGEX_CountMatches(String,pattern,icase)
: gibt die Anzahl der Übereinstimmungen mit dem Muster (pattern) innerhalb der Zeichenfolge zurück.
icase
ist ein optionaler Parameter. Wenn dieser angegeben ist, muss die Groß-/Kleinschreibung übereinstimmen. Standardmäßig „icase=1“, was bedeutet, dass die Groß- und Kleinschreibung ignoriert wird. Wenn „icase" auf „0" festgelegt ist, muss die Groß- und Kleinschreibung übereinstimmen.
REGEX_Match(String,pattern,icase)
: durchsucht eine Zeichenfolge nach dem Vorkommen eines regulären Ausdrucks.
Gibt an, ob die Zeichenfolge vom ersten bis zum letzten Zeichen mit dem Muster übereinstimmt.
Beginnen Sie das Schema mit „.*“, um nach etwas zu suchen, das nicht unbedingt am Anfang der Zeichenfolge beginnt.
Beenden Sie das Schema mit „.*“, um nach etwas zu suchen, das nicht unbedingt bis zum Ende der Zeichenfolge reicht.
icase
ist ein optionaler Parameter. Wenn dieser angegeben ist, muss die Groß-/Kleinschreibung übereinstimmen. Standardmäßig „icase=1“, was bedeutet, dass die Groß- und Kleinschreibung ignoriert wird. Wenn „icase" auf „0" festgelegt ist, muss die Groß- und Kleinschreibung übereinstimmen.
REGEX_Match("123-45-6789", "\d{3}-\d{2}-\d{4}")
gibt „-1“ („True“) zurück.
REGEX_Replace(String, pattern, replace, icase)
: ermöglicht das Ersetzen von Text mithilfe regulärer Ausdrücke und gibt die Zeichenfolge zurück, die sich aus dem RegEx-Suchen (pattern) und Ersetzen (string) ergibt. Alle Vorkommen der Übereinstimmung werden ersetzt, nicht nur das erste.
Der Ersetzungsparameter kann entweder ein angegebener Wert, wie unten angezeigt, oder eine markierte Gruppe sein, z. B. „$1“. Stellen Sie sicher, dass markierte Gruppen in doppelte Anführungszeichen gesetzt sind.
icase
ist ein optionaler Parameter. Wenn dieser angegeben ist, muss die Groß-/Kleinschreibung übereinstimmen.
Standardmäßig bedeutet „icase=1ֱ“, dass die Groß-/Kleinschreibung ignoriert wird.
Wenn „icase" auf „0" festgelegt ist, muss die Groß- und Kleinschreibung übereinstimmen.
REGEX_Replace("Don't reveal your Social Security number, 123-45-6789","\d{3}-\d{2}-\d{4}", "CLASSIFIED")
gibt „Don't reveal your Social Security number, CLASSIFIED“ zurück.
REGEX_Replace("Change all domain names from alteryx@Alteryx.com","@.*\.", "@extendthereach.")
gibt „Change all domain names from alteryx@extendthereach.com“ zurück.
REGEX_Replace("25 test","(\d+)\s.*","$1")
gibt 25 zurück.
Replace(String, Target, Replacement)
: gibt die Zeichenfolge (String) zurück, nachdem jedes Vorkommen der Zeichenfolge (Target) durch die Zeichenfolge (Replacement) ersetzt wurde.
Replace("Good judgment comes from experience", "experience", "awareness")
gibt „Good judgement comes from awareness“ zurück.
ReplaceChar(String, y, z)
: gibt die Zeichenfolge (String) zurück, nachdem jedes Vorkommen des Zeichens (y) durch das Zeichen (z) ersetzt wurde. Wenn das Ersatzzeichen (z) eine Zeichenfolge mit mehr als einem Zeichen ist, wird nur das erste Zeichen verwendet. Wenn (z) leer ist, wird jedes Zeichen (String), das mit einem beliebigen Zeichen in (y) übereinstimmt, einfach entfernt.
ReplaceChar("abcdefb", "b", "_")
gibt „a_cdef_“ zurück.
ReplaceChar("@a#b%c", "@,#,%", "_")
gibt „_a_b_c“ zurück.
ReplaceFirst(String, Target, Replacement)
: gibt die Zeichenfolge (String) zurück, nachdem das erste Vorkommen der Zeichenfolge (Target) durch die Zeichenfolge (Replacement) ersetzt wurde.
ReplaceFirst("abcdefb", "b", "_")
gibt „a_cdefb“ zurück.
ReverseString(String)
: kehrt alle Zeichen in der Zeichenfolge um.
ReverseString("abcdefb")
gibt „bfedcba“ zurück.
Right(String, len)
: gibt die letzten (len) Zeichen der Zeichenfolge zurück. Wenn len kleiner 0 oder größer als die Länge der Zeichenfolge ist, bleibt die Zeichenfolge unverändert.
Right("92688", 3)
gibt den Wert „688“ zurück.
StartsWith(String, Target, CaseInsensitive=1)
: prüft, ob eine Zeichenfolge mit einer bestimmten Zeichenfolge beginnt. Gibt True (wahr) zurück, wenn die Zeichenfolge mit einer bestimmten Zeichenfolge „Target“ beginnt. Gibt anderenfalls False (falsch) zurück.
StartsWith('ABC123', 'ABC')
gibt „True“ zurück.
StartsWith('ABC123', 'abc')
gibt „True“ zurück.
StartsWith('ABC123', 'abc', 0)
gibt „False“ zurück.
STRCSPN(String, y)
: Gibt die Länge des Anfangssegments der Zeichenfolge (String) zurück, das aus Zeichen besteht, die
nicht
in der Zeichenfolge (y) enthalten sind.
STRCSPN("Bob's Amaco", "~!@#$%^&*'()")
gibt 3 zurück. Dies ist ein nützlicher Test, um sicherzustellen, dass in der Zeichenfolge keine Interpunktion vorkommt.
StripQuotes(String)
: entfernt einen übereinstimmenden Satz von Anführungszeichen oder Apostrophen von den Enden der Zeichenfolge.
StripQuotes("Hello there")
gibt „Hello there“ zurück.
StripQuotes("'Hello there,' she said.")
gibt „Hello there, she said“ zurück
StripQuotes('"Hello there," she said.')
gibt „Hello there, she said“ zurück.
STRSPN(String, y)
: gibt die Länge des Anfangssegments der Zeichenfolge (String) zurück, die aus Zeichen in der Zeichenfolge (y) besteht.
STRSPN("3034408896x105", "0123456789")
gibt 10 zurück. Dies ist ein nützlicher Test, um sicherzustellen, dass eine Zeichenfolge aus einer Reihe von Zeichen besteht.
Substring(String, start, length)
: gibt die Teilzeichenfolge von (String) zurück, beginnend bei (start) und endend nach (length), falls angegeben.
Substring("949-222-4356", 4, 8)
gibt „222-4356“ zurück.
Substring("949-222-4356", 4, 6)
gibt „222-43“ zurück.
Substring("949-222-4356", 4)
gibt „222-4356“ zurück.
TitleCase(String)
: konvertiert in der Zeichenfolge kleine Anfangsbuchstaben der Wörter in große Anfangsbuchstaben.
TitleCase("john smith")
gibt „John Smith“ zurück.
Trim(String, y)
: Entfernt die Zeichen in der Zeichenfolge (y) von den Enden der Zeichenfolge (String). „Y" ist optional und wird standardmäßig zum Entfernen von Leerzeichen verwendet. Beachten Sie, dass in den Beispielen der TRIM-Funktion die angegebenen Zeichen entfernt wurden. Es spielt dabei keine Rolle, in welcher Reihenfolge die Zeichen vorkommen.
Trim("!see instructions!!!", "!")
gibt „see instructions“ zurück.
Trim(" Test123 ")
gibt „Test123“ zurück.
TrimLeft(String, y)
: entfernt das Zeichen in der Zeichenfolge (y) vom Anfang der Zeichenfolge (String). „Y" ist optional und wird standardmäßig zum Entfernen von Leerzeichen verwendet.
TrimLeft("** special invitation ", " *")
gibt „special invitation “ zurück.
TrimRight(String, y)
: entfernt das Zeichen in der Zeichenfolge (y) vom Ende der Zeichenfolge (String). „Y" ist optional und wird standardmäßig zum Entfernen von Leerzeichen verwendet.
Während Sie möglicherweise eine Zeichenfolge zum Abschneiden einlesen, respektieren die TRIM-Funktionen die Reihenfolge der Zeichen nicht. Die Zeichenfolge wird als „Liste" behandelt. Daher werden ALLE Zeichen in der Liste abgeschnitten. Wenn Sie eine Zeichenfolge ersetzen möchten, verwenden Sie in Ihrem Ausdruck besser die REPLACE-Funktion oder eine REGEX-Funktion.
TrimRight("John Smith ")
gibt „John Smith“ zurück.
TrimRight("John Smith**","*")
gibt „John Smith“ zurück.
Uppercase(String)
: konvertiert eine Zeichenfolge in Großbuchstaben.
Uppercase("John Smith")
gibt „JOHN SMITH“ zurück.
UuidCreate()
: erstellt eine einmalige Kennung.
UuidCreate()
gibt eine eindeutige Variable wie „ba131836-1ba3-4d42-8f7e-b81a99c2e838“ zurück.
Wenn auf die Länge einer Zeichenfolge verwiesen wird, wird das erste Zeichen als „1" gezählt (die Länge der Zeichenfolge „record" beträgt 6).
Wenn jedoch die Zeichenposition innerhalb einer Zeichenfolge referenziert wird, werden tatsächlich die Stellen zwischen den Zeichen gezählt. Daher sollten Sie die Stelle des ersten Zeichens als „0" angeben. Daher befindet sich der Buchstabe „c“ in der Zeichenfolge „record“ an Position 4.