Sdílet prostřednictvím


CStringT::Tokenize

Najde další token řetězec cílové

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

Parametry

  • pszTokens
    Řetězec obsahující token oddělovače.Pořadí těchto oddělovačů není důležité.

  • iStart
    Z nuly vycházející index hledání začít.

Vrácená hodnota

A CStringT objekt obsahující aktuální hodnotu token.

Poznámky

Tokenize Funkce vyhledá další token řetězec cíl.Sada znaků v pszTokens určuje možné oddělovače token nalezen.Každé volání Tokenize funkce začíná iStart , přeskočí úvodní oddělovače a vrátí CStringT objekt obsahující aktuální token, který je řetězec znaků do další znak oddělovače.Hodnota iStart je aktualizován na pozici následující koncový znak oddělovače nebo -1, pokud bylo dosaženo konce řetězce.Další tokeny, lze zjistit z zbytek cílový řetězec pomocí série volání Tokenize , použití iStart ke sledování umístění v řetězci další token je ke čtení.Pokud neexistují žádné další tokeny vrátí funkce prázdný řetězec a iStart bude nastavena na hodnotu -1.

Na rozdíl od CRT tokenize funguje jako strtok_s, _strtok_s_l, wcstok_s, _wcstok_s_l, _mbstok_s, _mbstok_s_l, Tokenize řetězec cílové nezmění.

Příklad

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

Poznámky

Výstup z tohoto příkladu je následující:

Resulting Token: First

Resulting Token: Second

Resulting Token: Third

Požadavky

Záhlaví: cstringt.h

Viz také

Referenční dokumentace

Třída CStringT