s_strtok

Top  Previous  Next

 

Trennt eine Zeichenkette an beliebigen Trennzeichen auf.

s_strtok trennt eine Zeichenkette an allen Vorkommen eines der Trennzeichen auf und gibt die entstandenen Teile zurück.

Parameter

<Zeichenkette>

Der erste Parameter ist die zu aufzutrennende Zeichenkette.

<Trennzeichen>

Der zweite Parameter enthält ein oder mehrere Trennzeichen.

Syntax

s_strtok <Zeichenkette> <Trennzeichen>

s_strtok ( <Zeichenkette> <Trennzeichen> )

Wenn s_strtok als Argument andere Funktionen wie z. B. s_concatComma oder Echo verwendet wird, dann muß die Syntax mit den Klammern verwendet werden.

Rückgabewert

Wert

Beschreibung

Zeichenketten

die Teile der aufgetrennten Zeichenkette

-1

Fehler aufgetreten

Beispiel

Kommandozeileneingaben:

Echo s_strtok( "abc,def,ghi" "," )

abc def ghi

Echo s_strtok( abc,def,ghi , )

abc def ghi

Weder die Zeichenkette noch die Trennzeichen enthielten ein Leerzeichen, deshalb durften die Hochkommata entfallen.

Echo s_concatComma( s_strtok( "abc def ghi" " " ) )

abc,def,ghi

Die Zeichenkette wurde an den Leerzeichen getrennt, die daraus resultierenden Teile wurden mit Kommata wieder miteinander verbunden.

Echo s_strtok( abc,def;ghi.jkl:mno :.,; )

abc def ghi jkl mno

Trennzeichen waren diverse Satzzeichen.

Echo s_concatComma( s_strtok( "10x_x20x30" "x_" ) )

10,,,20,30

Die Zeichenkette wurde an jedem Vorkommen von ‘x‘ und ‘_‘ getrennt und die sich ergebenden Teile mit Kommata wieder aneinander gehängt. Bemerkenswert dabei ist, daß an der Stelle “x_x“ der Zeichenkette mit drei unmittelbar aufeinanderfolgenden Trennzeichen zwei Leerstrings entstanden sind.

Echo s_strtok( “one,two“ “,“ )

 one two

Echo s_getOneArg( 1 s_strtok( “one,two“ “,“ ) )

 one

Echo s_getOneArg( 2 s_strtok( “one,two“ “,“ ) )

 two

Die Zeichenkette „one,two“ wurde mit s_strtok am Komma in zwei Teile zerlegt, so daß mit s_getOneArg gezielt auf den ersten bzw. zweiten Teil zugegriffen werden konnte.

Bemerkung

Zeichenketten oder Trennzeichen die Leerzeichen enthalten, müssen in Hochkommata eingeschlossen werden. Sonst können sie ohne Hochkommata angegeben werden.

Wenn in der Zeichenkette mehrere Trennzeichen unmittelbar aufeinander folgen, dann entstehen dadurch eine entsprechende Anzahl an Leerstrings.

In den Beispielen ist dem Befehl s_strtok der Befehl Echo vorangestellt, damit das Ergebnis ausgegeben wird. Deshalb muß die Syntax mit Klammern verwendet werden.

Siehe auch

Echo

s_copy

s_concat

s_getOneArg

s_splitargs

s_strchr

s_strlen

s_strrchr

s_strstr