Zeichenfolgefunktionen
Dieser Abschnitt enthält eine kurze Beschreibung der Funktionen, die auf Zeichenfolgewerte angewendet werden.
Funktion | Verwendungszweck |
---|---|
convert | Konvertiert eine Zeichenfolge in einen anderen Datentyp oder konvertiert einen anderen Datentyp in eine Zeichenfolge. |
decode | Konvertiert einen codierten Zeichenfolgeausdruck wieder in die Originalzeichenfolge. |
encode | Konvertiert einen Zeichenfolgeausdruck in eine sinnlose Textzeichenfolge. |
hex | Setzt ein Zeichenfolgeliteral mit Hexadezimalzeichencodes in eine ASCII- Zeichenfolge um. |
in_set | Gibt den booleschen Wert 'true' (wahr) zurück, wenn eine Zeichenfolge komplett aus Zeichen einer anderen Zeichenfolge zusammengesetzt ist. |
is_number | Gibt den booleschen Wert 'true' (wahr) zurück, wenn ein Zeichenfolgeausdruck in einen Gleitkomma- oder ganzzahligen Wert ausgewertet wird. |
is_time | Gibt den booleschen Wert 'true' (wahr) zurück, wenn ein Zeichenfolgeausdruck in einen gültigen Zeitwert ausgewertet wird. |
len | Gibt die Länge einer Zeichenfolge zurück. |
Ändert die Zeichen einer Zeichenfolge in Klein- bzw. Großbuchstaben. | |
Löscht Leerzeichen oder angegebene Zeichen vom Anfang (ltrim), Ende (rtrim) oder von beiden Enden (trim) einer Zeichenfolge. | |
max | Gibt den höchsten Wert für jeden unterstützten Datentyp aus einer Liste mit Ausdrücken zurück. |
min | Gibt den niedrigsten Wert für jeden unterstützten Datentyp aus einer Liste mit Ausdrücken zurück. |
numbertostring | Konvertiert einen Gleitkomma- oder ganzzahligen Ausdruck in einen Zeichenfolgeausdruck unter Verwendung einer angegebenen Maske. |
repeat | Erzeugt eine Zeichenfolge, indem eine andere Zeichenfolge mehrfach wiederholt wird. |
strins | Fügt eine Zeichenfolge an der angegebenen Position in eine andere Zeichenfolge ein. |
strloc | Gibt die Anfangsposition einer Unterzeichenfolge innerhalb einer Zeichenfolge zurück. Wenn die Unterzeichenfolge nicht gefunden wird, gibt die Funktion null zurück. |
stringtotime | Konvertiert einen Zeichenfolgeausdruck in einen Zeitausdruck unter Verwendung einer angegebenen Maske. |
substitute | Ersetzt eine Unterzeichenfolge innerhalb einer Zeichenfolge durch eine andere Unterzeichenfolge. |
substr | Gibt eine Unterzeichenfolge an einer angegebenen Anfangsposition und mit einer angegebenen Länge zurück. |
timetostring | Konvertiert einen Zeitausdruck in einen Zeichenfolgeausdruck unter Verwendung einer angegebenen Maske. |
translate | Ersetzt Zeichen in einer Zeichenfolge. |
xmlencode | Konvertiert ein XML-Feld in eine Zeichenfolgeausdruck. |
xmldecode | Konvertiert einen Zeichenfolgeausdruck in XML. |
hex
Diese Funktion setzt ein Zeichenfolgeliteral mit Hexadezimalzeichencodes in eine ASCII- Zeichenfolge um. Mit der Funktion hex kann jedes beliebige Zeichen ausgedrückt werden. Im Allgemeinen wird die Funktion hex jedoch für Zeichen verwendet, die keine ASCII-Darstellungen haben, wie z. B. Tabulatoren.
hex (hex_codes)
Dabei ist hex_codes ein Zeichenfolgeliteral, das den Hexadezimalcode für ein Zeichen oder eine Folge von Zeichen enthält.hex ("616263")
translate
Diese Funktion erzeugt eine neue Zeichenfolge, indem sie die Zeichen in einer Zeichenfolge durch die angegebenen Zeichen ersetzt. Die Funktion translate ist hilfreich zum Codieren von Zeichen.
translate (source_string, search_string,
replace_string)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
source_string | Die Zeichenfolge, die die zu ersetzenden Zeichen enthält. |
search_string | Die Zeichenfolge innerhalb von source_string, die ersetzt werden soll. Diese muss dieselbe Länge haben wie replace_string. |
replace_string | Die Zeichenfolge mit den Ersetzungszeichen. Diese muss dieselbe Länge haben wie search_string. |
Das Suchen und Ersetzen erfolgt zeichenweise. Wenn die Suchzeichenfolge "abc" und die Ersetzungszeichenfolge "def" lautet, setzt die Funktion in der neu erzeugten Zeichenfolge "a" in "d", "b" in "e" und "c" in "f" um.
source_string enthält "*123-#44-!999"
search_string enthält "#*!-"
replace_string enthält "XYZ&"
Die Funktion gibt in diesem Beispiel die folgende neue Zeichenfolge aus:Y123&X44&Z999
Der Inhalt der Quellenzeichenfolge (source_string), der Suchzeichenfolge (search_string) und der Ersetzungszeichenfolge (replace_string) ändert sich nicht.
translate (str, ".,", ",.")
lower, upper
lower (string_exp)
upper (string_exp)
Dabei ist string_exp der zu konvertierende Zeichenfolgeausdruck.in_set
Diese Funktion vergleicht zwei Zeichenfolgen und gibt den booleschen Wert 'true' (wahr) zurück, wenn jedes Zeichen in der ersten Zeichenfolge an beliebiger Stelle in der zweiten Zeichenfolge enthalten ist. Wenn die erste Zeichenfolge mindestens ein Zeichen enthält, das nicht auch in der zweiten Zeichenfolge enthalten ist, gibt die Funktion den Wert 'false' (falsch) zurück. Die Zeichen müssen in den beiden Zeichenfolgen nicht in derselben Reihenfolge angeordnet sein. Die zweite Zeichenfolge darf zudem weitere Zeichen enthalten.
in_set (subset_string, superset_string)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
subset_string | Der Zeichenfolgeausdruck, der nur die Untergruppenzeichen enthält. |
superset_string | Der Zeichenfolgeausdruck, mit dem subset_string verglichen wird. |
in_set (name, "abcdefghijklmnopqrstuvwxyz")
Die Funktion gibt 'true' (wahr) zurück, wenn name = "jim"
aber 'false' (falsch), wenn
name = "Fido"
oder name = "a.b"
len
len (string_expr)
Dabei ist string_expr der Zeichenfolgeausdruck, dessen Länge berechnet werden soll.len ("Hamilton Burger")
repeat
repeat (string_expr, repeat_num)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
string_expr | Der zu wiederholende Zeichenfolgeausdruck. |
repeat_num | Die Wiederholungsanzahl von string_exp. |
repeat ("abcd", 5)
strloc
Eine Unterzeichenfolge ist Teil einer Quellenzeichenfolge; sie kann maximal der Länge der Quellenzeichenfolge entsprechen oder kürzer sein. Gut, Mor, en Morg und Guten Mo sind alles Unterzeichenfolgen von Guten Morgen.
Mit der Funktion strloc können Sie herausfinden, wo eine bestimmte Unterzeichenfolge in einer Quellenzeichenfolge auftritt. Diese Funktion gibt die Position des Anfangszeichens in der Quellenzeichenfolge zurück.
Wenn die Unterzeichenfolge mehrmals in der Quellenzeichenfolge gefunden wird, gibt die Funktion nur die Anfangsposition des ersten Vorkommens zurück. Wenn die Unterzeichenfolge nicht gefunden wird oder wenn die Unterzeichenfolge länger als die Quellenzeichenfolge ist, gibt die Funktion null zurück.
strloc (source_string, sub_string)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
source_string | Die Zeichenfolge, in der nach der Unterzeichenfolge gesucht werden soll. |
sub_string | Die zu suchende Zeichenfolge. |
strloc ("Guten Morgen", "Morgen")
substr
Diese Funktion extrahiert eine Unterzeichenfolge aus einer Quellenzeichenfolge und erzeugt damit eine neue Zeichenfolge. Sie geben die Quellenzeichenfolge und die Zeichenposition an, an der die Extraktion beginnen soll. Darüber hinaus können Sie optional die Anzahl der zu extrahierenden Zeichen angeben; ohne diese Angabe stoppt die Extraktion am Ende der Quellenzeichenfolge.
substr (source_string, start_pos {, length})
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
source_string | Die Quellenzeichenfolge. |
start_pos | Die Zeichenposition, an der die Extraktion beginnen soll. |
length | Die Anzahl der zu extrahierenden Zeichen (z. B. die Länge der extrahierten Zeichenfolge). |
substr ("Guten Morgen!", 6, 7)
Diese Funktion kann auch Zeichenfolgen der Länge Null (Zeichenfolgen ohne Zeichen zwischen den Anführungszeichen) an einer Position extrahieren, die um 1 größer ist als die Länge der Zeichenfolge. Diese Verwendung ist hilfreich für Algorithmen, die Zeichenfolgen der Länge null als Ersterkennungsbedingung haben. Sie können Zeichen von Position 1 bis zum letzten Zeichen der Zeichenfolge +1 extrahieren. Position 1 und die Länge der Zeichenfolge +1 sind also Ersterkennungsbedingungen.
In den folgenden Fällen treten Laufzeitfehler auf:
- Ihre Anfangsposition ist kleiner als 1 oder größer als die Länge der Quellenzeichenfolge + 1.
- Die angegebene Länge würde eine Unterzeichenfolge erzeugen, die länger als die verbleibenden Zeichen in der Quellenzeichenfolge ist (d. h. start_pos + length > len (source_string) + 1).
strins
strins (source_string, insert_string, start_pos)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
source_string | Die Zeichenfolge, in die insert_string eingefügt wird, um die neue Zeichenfolge zu erzeugen. |
insert_string | Die Zeichenfolge, die in source_string eingefügt wird, um die neue Zeichenfolge zu erzeugen. |
start_pos | Die Position in source_string, an der die Einfügung beginnt; die Werte reichen von 1 bis zur Länge der Quellenzeichenfolge + 1. Es tritt ein Fehler auf, wenn Sie einen Wert kleiner als 1 oder größer als source_string + 1 angeben. |
insert_str = "Herr Maier"
und
source_str = "Guten Morgen, was für ein herrlicher Tag."
strins (source_str, insert_str, 15)
Guten Morgen, Herr Maier, was für ein herrlicher Tag.
substitute
substitute (source_string, unwanted_string,
replacement_string)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
source_string | Die Zeichenfolge, die unwanted_string enthält. |
unwanted_string | Die zu ersetzende Unterzeichenfolge in source_string. |
replacement_string | Die Zeichenfolge, die unwanted_string ersetzt, um eine neue Zeichenfolge zu erzeugen. |
substitute (TestString, "abc", "wxyz")
TestString = "abcdabcd"
gibt die Funktion die folgende neue Zeichenfolge zurück: wxyzdwxyzd
Der Inhalt der Quellenzeichenfolge (source_string), der zu ersetzenden Zeichenfolge (unwanted_string) und der Ersetzungszeichenfolge (replacement_string) ändert sich nicht.ltrim, rtrim und trim
Diese Funktionen erzeugen eine neue Zeichenfolge, indem sie eine vorhandene Quellenzeichenfolge kopieren und Leerzeichen oder angegebene Zeichen vom Anfang (ltrim), Ende (rtrim) oder von beiden Enden (trim) der neuen Zeichenfolge löschen. In allen Fällen bleibt die Quellenzeichenfolge unverändert.
ltrim (string_expr{, trim_char}opt)
rtrim (string_expr{, trim_char}opt)
trim (string_expr{, trim_char}opt)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
string_expr | Der zu kopierende Quellenzeichenfolgenausdruck. |
trim_char | Ein optionaler Parameter, der die Zeichen angibt, die aus der neuen Zeichenfolge gelöscht werden sollen. Wenn Sie diesen Parameter nicht angeben, werden Leerzeichen gelöscht. Je nach Funktion beginnt der Löschvorgang am Anfang, am Ende oder an beiden Enden der neuen Zeichenfolge und wird fortgesetzt, bis ein Zeichen, das nicht in trim_char angegeben ist, bzw. ein anderes Zeichen als ein Leerzeichen gefunden wird. |
LastName = "Schmidt"
und
die zurückgegebene neue Zeichenfolge ist "Schmidt"
ltrim (LastName)
Status = "OpenXY&Z&&&&"
lautet die zurückgegebene neue Zeichenfolge "OpenXY&Z"
.rtrim (Status, "&")
rtrim (AccountName, "0123456789")
is_number
Diese Funktion ermittelt, ob der angegebene Zeichenfolgeausdruck in einen Gleitkomma- oder ganzzahligen Wert ausgewertet wird. Die Funktion is_number gibt den booleschen Wert 'true' (wahr) zurück, wenn die gesamte Zeichenfolge (und nicht nur eine Unterzeichenfolge) in einen Gleitkomma- oder ganzzahligen Wert ausgewertet wird; wenn dies nicht der Fall ist, gibt sie 'false' (falsch) zurück.
is_number (expr)
Dabei ist expr ein Zeichenfolgeausdruck.is_number ("123.4")
is_number ("no")
is_number ("abc63j")
is_time
Diese Funktion ermittelt, ob der angegebene Zeichenfolgeausdruck in einen Zeitwert des angegebenen Formats ausgewertet wird. Die Funktion is_time gibt den booleschen Wert 'true' (wahr) zurück, wenn die gesamte Zeichenfolge (und nicht nur eine Unterzeichenfolge) in einen Zeitwert ausgewertet wird, der wie angegeben formatiert ist. Ansonsten gibt die Funktion den Wert 'false' (falsch) zurück.
is_time (Zeichenfolgeausdruck, Datums-/Zeitmaske)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
Zeichenfolgeausdruck | Ein Zeichenfolgeausdruck. |
Datums-/Zeitmaske | Eine Datums-/Zeitmaske, die das Format angibt, das Zeichenausfolgeausdruck verwenden muss, damit is_time den Wert 'true' zurückgibt. |
is_time ("nov121995", "mm/dd/yyyy")
is_time ("11/12/1995", "mm/dd/yyyy")
timetostring
timetostring (Zeitausdruck, Datums-/Zeitmaske)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
Zeitausdruck | Ein Ausdruck des Zeitdatentyps. |
Datums-/Zeitmaske | Eine Datums-/Zeitmaske, die das Format der Ausgabe der Funktion timetostring bestimmt. |
timetostring (systemtime(), "mm/dd/yyyy hh:tt:ss am")
7/1/1985 12:45:06 pm
Weitere Informationen finden Sie in systemtime().
stringtotime
stringtotime (Zeichenfolgeausdruck, Datums-/Zeitmaske)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
Zeichenfolgeausdruck | Ein Ausdruck des Zeichenfolgedatentyps. |
Datums-/Zeitmaske | Eine Datums-/Zeitmaske, die das Zeitformat für die Konvertierung angibt. |
stringtotime (HostTime, "mon. dd, yyyy hh:tt:ss am")
HostTime = "Jul. 1, 1985 12:45:06 pm"
entspricht die Ausgabe dem folgenden Zeitwert: 1. Juli 1985, 6 Sekunden nach 12:45.encode, decode
Diese Funktionen konvertieren Zeichenfolgen in sinnlose Zeichenfolgen, um den Inhalt zu kaschieren. Die Codierung und die Decodierung müssen beide im selben Workflow erfolgen.
encode (Zeichenfolgeausdruck)
decode (Zeichenfolgeausdruck)
Dabei gilt Folgendes:Parameter | Beschreibung |
---|---|
Zeichenfolgeausdruck | Ein Ausdruck des Zeichenfolgedatentyps. Die Zeichenfolge darf kein Literal sein. |