SubStr() [v1.0.46+]

Ermittelt ein oder mehrere Zeichen von einer bestimmten Stelle innerhalb einer Zeichenkette.

NeueZkette := SubStr(Zkette, StartPos , Länge)

Parameter

Zkette

Eine Zeichenkette, deren Inhalt kopiert werden soll.

StartPos

Geben Sie eine 1 an, um beim ersten Zeichen zu beginnen, eine 2, um beim zweiten Zeichen zu beginnen, und so weiter (überschreitet StartPos die Länge von Zkette, wird eine leere Zeichenkette zurückgegeben). Ist StartPos kleiner als 1, wird sie als Offset vom Ende der Zeichenkette angesehen. Zum Beispiel würde eine 0 das letzte Zeichen und -1 die letzten zwei Zeichen extrahieren (überschreitet StartPos aber das linke Ende der Zeichenkette, beginnt das Extrahieren beim ersten Zeichen).

Länge

Lässt man diesen Parameter weg, werden standardmäßig "alle Zeichen" verwendet. Ansonsten kann die maximale Anzahl an Zeichen angegeben werden, die extrahiert werden sollen (es werden weniger Zeichen abgerufen, falls der verbleibende Teil der Zeichenkette zu kurz ist). Man kann auch eine negative Länge angeben, um die Anzahl an Zeichen zu bestimmen, die vom Ende der zurückgegebenen Zeichenkette weggelassen werden sollen (es wird eine leere Zeichenkette zurückgegeben, wenn alle oder zu viele Zeichen weggelassen worden sind).

Rückgabewert

Diese Funktion gibt die gewünschte Teilzeichenkette innerhalb von Zkette zurück.

Bemerkungen

Funktionsgemäß ist die SubStr-Funktion nahezu identisch mit dem StringMid-Befehl. Allerdings wird empfohlen, SubStr zu verwenden, weil es flexibler und zukunftssicherer als StringMid ist.

RegExMatch(), StringMid, StringLeft/Right, StringTrimLeft/Right

Beispiele

Ermittelt an Position 4 eine Teilzeichenkette mit einer Länge von 3 Zeichen.

MsgBox % SubStr("123abc789", 4, 3) ; Gibt abc zurück

Ermittelt eine Teilzeichenkette am Anfang und Ende einer Zeichenkette.

Zkette := "The Quick Brown Fox Jumps Over the Lazy Dog"
MsgBox % SubStr(Zkette, 1, 19)  ; Gibt "The Quick Brown Fox" zurück
MsgBox % SubStr(Zkette, -7)  ; Gibt "Lazy Dog" zurück