Share via


CStringT::Tokenize

Encuentra el token siguiente en una cadena de destino

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

Parámetros

  • pszTokens
    Una cadena que contiene los delimitadores de token. El orden de estos delimitadores no es importante.

  • iStart
    El índice basado cero- a comenzar la búsqueda.

Valor devuelto

Un objeto de CStringT que contiene el valor actual del token.

Comentarios

La función de Tokenize encuentra el token siguiente en la cadena de destino. El conjunto de caracteres en pszTokens especifica los delimitadores del token que se buscará. En cada llamada a Tokenize la función comienza en iStart, omite los delimitadores principales, y devuelve un objeto de CStringT que contiene el token actual, que es la cadena de caracteres hasta el carácter delimitador siguiente. El valor de iStart se actualizará a la posición que sigue al carácter delimitador de cierre, o -1 si el final de la cadena se obtuvo acceso. Más tokenes se desglosen del resto de la cadena de destino por una serie de llamadas a Tokenize, mediante iStart para realizar el seguimiento de dónde en la cadena que se debe leer el token siguiente. Cuando no hay tokenes la función devolverá una cadena vacía y iStart se establecerá en -1.

A diferencia de CRT tokenize las funciones como strtok_s, _strtok_s_l, wcstok_s, _wcstok_s_l, _mbstok_s, _mbstok_s_l, Tokenize no modifica la cadena de destino.

Ejemplo

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

Comentarios

La salida de este ejemplo es la siguiente:

Resulting Token: First

Resulting Token: Second

Resulting Token: Third

Requisitos

encabezado: cstringt.h

Vea también

Referencia

CStringT Class