SubString
Gibt die Teilzeichenfolge aus dem ersten Parameter zurück, die an <Start> beginnt und die gewünschte Länge hat
Syntax
SubString (<Zeichenfolgen-Ausdruck>, <Start>, <Länge>)
Parameterliste
- <Zeichenfolgen-Ausdruck>
- Ausdruck, der Zeichendaten bzw. eine Spalte passenden Typs zurückliefert
- <Start>
- Ganzzahl, welche die Position beschreibt, an welcher die Teilzeichenfolge beginnt.
- <Länge>
- Ganzzahl, welche die Länge der zurückgebenden Teilzeichenfolge benennt.
Ein Wert 0 ist erlaubt und führt zur Rückgabe einer leeren Zeichenfolge, es wird nicht Null zurückgegeben.
Ist die Länge größer als die Zahl der verfügbaren Zeichen, so werden alle verfügbaren Zeichen ab <Start>
zurückgegeben.
- Rückgabewert
- Zeichendaten
- Typ
- Zeichenfolgen-Funktion
Beispiele
Substring('Montag', 2, 3) = 'ont'Substring('Montag', 2, 30) = 'ontag''abc' + Substring('Montag', 2, 0) + 'xyz' = 'abcxyz'
Merkwürdigerweise gelingt die folgende Anweisung ohne Fehlermeldung:
Substring('Montag', -10, 13) = 'Mo'Hinweise
Die Substring-Funktion ist die aufwendigste der drei Funktionen
Left, SubString und
Right,
welche Teilzeichenfolgen zurückliefern. Anstelle Substring(<Zeichenfolge>, 1, <Länge>) sollte
Left(<Zeichenfolge>, <Länge>), anstelle Substring(<Zeichenfolge>, <Position>, Len(<Zeichenfolge>))
kann Right(<Zeichenfolge>, Len(<Zeichenfolge>) - <Position> + 1) verwendet werden. Das letzte Beispiel ist
allerdings problematisch, falls die Zeichenfolge selbst das Ergebnis einer anderen Funktion ist, so daß letztere zweimal
ausgeführt werden müßte. Da der dritte Parameter der Substring-Funktion auch unsinnig groß sein kann, läßt sich
SubString(<Zeichenfolge>, <Start>, 4000) für Unicode-Daten (maximale interne Länge: 4000 Zeichen) verwenden.
Analog liefert
Stuff(<Zeichenfolge>, 1, <Start> - 1, Null) dasselbe Ergebnis, hier werden die ersten
<Start> - 1 - Zeichen einfach übersprungen.
© 2003-2009 Jürgen Auer, Berlin.