Share via


CStringT::Tokenize

Sucht das nächste Token in einer Zielzeichenfolge

CStringT Tokenize(
   PCXSTR pszTokens,
   int& iStart
) const;

Parameter

  • pszTokens
    Eine Zeichenfolge, die Scheintrennzeichen enthält.Die Reihenfolge dieser Trennzeichen ist nicht wichtig.

  • iStart
    Der nullbasierte Index, an dem die Suche zu beginnen.

Rückgabewert

Ein CStringT-Objekt, das den aktuellen Tokenwert enthält.

Hinweise

Die Tokenize-Funktion sucht das folgende Token in der Zielzeichenfolge.Der Satz von Zeichen in pszTokens gibt mögliche Trennzeichen des gefunden werden, Token an.Bei jedem Aufruf Tokenize beginnt die Funktion bei iStart, überspringt führende Trennzeichen und CStringT gibt ein Objekt zurück, das das aktuelle Token enthält, das die Zeichenfolge bis zum nächsten Trennzeichen ist.Der Wert von iStart wird aktualisiert, um die Position, die dem Endetrennzeichen folgen, oder -1 zu sein, wenn das Ende der Zeichenfolge erreicht wurde.Weitere Token können vom Rest der Zielzeichenfolge durch eine Reihe von Aufrufe Tokenize, mit iStart aufgeteilt werden, um nachzuverfolgen, wobei in der Zeichenfolge das folgende Token gelesen werden soll.Wenn keine weiteren Token gibt, gibt die Funktion eine leere Zeichenfolge zurück und iStart wird -1 festgelegt.

Im Gegensatz zum CRT zerlegen Sie Funktionen, z strtok_s, _strtok_s_l, wcstok_s, _wcstok_s_l, _mbstok_s, _mbstok_s_l, Tokenize nicht der Zielzeichenfolge ändert.

Beispiel

// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;
CAtlString str(_T("%First Second#Third"));
CAtlString resToken;
int curPos = 0;

resToken= str.Tokenize(_T("% #"),curPos);
while (resToken != _T(""))
{
   _tprintf_s(_T("Resulting token: %s\n"), resToken);
   resToken = str.Tokenize(_T("% #"), curPos);
};   

Hinweise

Die Ausgabe von diesem Beispiel ist, wie folgt:

Resulting Token: First

Resulting Token: Second

Resulting Token: Third

Anforderungen

Header: cstringt.h

Siehe auch

Referenz

CStringT-Klasse