Partager via


CStringT::Tokenize

Recherche la prochaine jeton dans une chaîne cible

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

Paramètres

  • pszTokens
    Chaîne contenant les séparateurs symboliques. L'ordre de ces séparateurs n'est pas importante.

  • iStart
    l'index de base zéro pour commencer la recherche.

Valeur de retour

Un objet d' CStringT contenant la valeur de jeton actuelle.

Notes

La fonction d' Tokenize recherche la prochaine jeton dans la chaîne cible. Le jeu de caractères dans pszTokens spécifie les séparateurs possibles du jeton à rechercher. À chaque appel à Tokenize la fonction commence à iStart, ignore de clés séparateurs, et retourne un objet d' CStringT contenant le jeton actuelle, qui est la chaîne de caractères jusqu ' à le prochain caractère délimiteur. La valeur d' iStart est mise à jour comme étant la position après le caractère délimiteur de fin, ou -1 si la fin de la chaîne est atteinte. Plus de marques peuvent être éclatées du reste de la chaîne cible par une série d'appels à Tokenize, à l'aide de iStart pour stocker où dans la chaîne la prochaine jeton doit être lue. Lorsqu'il ne reste plus de jetons la fonction retourne une chaîne vide et iStart aura la valeur -1.

Contrairement au CRT tokenize les fonctions comme strtok_s, _strtok_s_l, wcstok_s, _wcstok_s_l, _mbstok_s, _mbstok_s_l, Tokenize ne modifie pas la chaîne cible.

Exemple

// 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);
};   

Notes

La sortie de cet exemple est la suivante :

Resulting Token: First

Resulting Token: Second

Resulting Token: Third

Configuration requise

Header: cstringt.h

Voir aussi

Référence

CStringT, classe