SUBSTR( )-Funktion
Gibt aus dem angegebenen Zeichenausdruck oder Memofeld eine Zeichenfolge zurück.
SUBSTR(cExpression, nStartPosition [, nCharactersReturned])
Rückgabewerte
Zeichen
Parameter
cExpression
Gibt den Zeichenausdruck oder das Memofeld an, aus dem die Zeichenfolge zurückgegeben wird.nStartPosition
Gibt die Position in dem Zeichenausdruck oder Memofeld cExpression an, an der die Rückgabe der Zeichenfolge beginnt. Das erste Zeichen von cExpression hat die Position 1.Wenn SET TALK auf ON gesetzt ist und nStartPosition größer als die Anzahl von Zeichen in cExpression ist, erzeugt Visual FoxPro eine Fehlermeldung. Ist SET TALK auf OFF eingestellt, wird eine leere Zeichenfolge zurückgegeben.
nCharactersReturned
Gibt an, wie viele Zeichen aus cExpression zurückgegeben werden sollen. Ohne Angabe von nCharactersReturned werden alle Zeichen bis zum Ende des Zeichenausdrucks zurückgegeben.
Hinweise
SUBSTR( ) gibt eine Zeichenfolge der angegebenen Länge aus einem Zeichenausdruck oder Memofeld zurück, wobei mit der Rückgabe an der angegebenen Stelle im Zeichenausdruck oder Memofeld begonnen wird.
Geben Sie die PADR( )-Funktion in SUBSTR( ) an, wenn Sie SUBSTR( ) mit Memofeldern in einem SELECT – SQL-Befehl verwenden, damit leere oder unterschiedlich lange Memofelder bei der Konvertierung zu Zeichenfolgen konsistente Ergebnisse liefern.
SUBSTR( ) gibt, wenn im Debugger ausgeführt, keinen Wert für ein Memofeld zurück. Um einen Wert im Debugger zurückzugeben, müssen Sie den Namen des Memofeldes in ALLTRIM( ) angeben und ALLTRIM( ) wiederum in SUBSTR( ).
Beispiel
STORE 'abcdefghijklm' TO mystring
CLEAR
? SUBSTR(mystring, 1, 5) && Displays abcde
? SUBSTR(mystring, 6) && Displays fghijklm
Siehe auch
AT( ) | AT_C( ) | ATC( ) | ATCC( ) | ATCLINE( ) | ATLINE( ) | LEFT( ) | PADR( ) | RAT( ) | RATLINE( ) | RIGHT( ) | LEFTC( ) | RIGHTC( ) | SUBSTRC( ) | STRTRAN( ) | STUFF( )