Anwendungsgebiet: String-Funktionen
Die Funktion SUBSTRING( ) extrahiert einen Teilstring aus dem angegebenen String. Über die Eingabeparameter werden die Anfangsposition des Teilstrings und seine Länge bestimmt.
Format
SUBSTRING( ) SUBSTR( ) |
STRING = string_ausdruck ,START = 1 / arithm_ausdruck1 ,LENGTH = *REST-LENGTH / arithm_ausdruck2 |
Ergebnistyp
STRING
Eingabeparameter
STRING = string_ausdruck
Bezeichnet den Eingabestring, aus dem ein Teilstring extrahiert werden soll.
START = 1 / arithm_ausdruck1
Bezeichnet die Anfangsposition des Teilstrings, das heißt das erste Zeichen des Teilstrings; „arithm_ausdruck1“ ist eine positive Zahl vom Typ INTEGER und darf nicht größer sein als die Länge des Eingabestrings. Voreinstellung für „arithm_ausdruck1“ ist 1. Bezeichnet „arithm_ausdruck1“ keine gültige Anfangsposition im Eingabestring, wird der Leerstring zurückgegeben.
LENGTH =
Länge des Teilstrings
LENGTH = *REST-LENGTH
Bezeichnet implizit die Länge des Teilstrings als Restlänge ab der mit START angegebenen Zeichenposition (Stringlänge - „arithm_ausdruck1“ + 1 = Restlänge).
LENGTH = arithm_ausdruck2
Bezeichnet explizit die Länge des Teilstrings; ist die Längenangabe zu groß, gilt implizit LENGTH = *REST-LENGTH.
Ergebnis
Teilstring des Eingabestrings in der Länge LENGTH
Leerstring ('') bedeutet:
START = „arithm_ausdruck1“ war keine gültige Anfangsposition, oder es galt implizit oder explizit LENGTH = 0.
Fehlermeldungen
SDP0412 START-POSITION AUSSERHALB MOEGLICHEN BEREICHS SDP0413 NICHT ZULAESSIGE LAENGENANGABE SDP0414 WARNUNG: *REST-LENGTH WERTE FUER OPERAND LENGTH VERWENDET
Beispiel
/A = 'ABCDEFGH' /B = SUBSTRING(STRING = A, START = 2, LENGTH = 4) /SHOW-VARIABLE B B = BCDE /C = 2 /B = SUBSTRING(STRING = A, START = C) /SHOW-VARIABLE B B = BCDEFGH /D = 4 /B = SUBSTRING(STRING = A, LENGTH = D) /SHOW-VARIABLE B B = ABCD /B = SUBSTRING(STRING = A, START = 9) SDP0412 START-POSITION AUSSERHALB MOEGLICHEN BEREICHS /SHOW-VARIABLE B B =
Weiteres Beispiel: siehe Funktion "VERIFY( ) Strings prüfen"