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