std::strtok (3) - Linux Man Pages
Defined in header <cstring>
char* strtok( char* str, const char* delim );
Finds the next token in a null-terminated byte string pointed to by str. The separator characters are identified by null-terminated byte string pointed to by delim.
This function is designed to be called multiple times to obtain successive tokens from the same string.
* If str != NULL, the call is treated as the first call to strtok for this particular string. The function searches for the first character which is not contained in delim.
* If str == NULL, the call is treated as a subsequent calls to strtok: the function continues from where it left in previous invocation. The behavior is the same as if the previously stored pointer is passed as str.
str - pointer to the null-terminated byte string to tokenize
delim - pointer to the null-terminated byte string identifying delimiters
Pointer to the beginning of the next token or NULL if there are no more tokens.
This function is destructive: it writes the '\0' characters in the elements of the string str. In particular, a string_literal cannot be used as the first argument of strtok.
Each call to this function modifies a static variable: is not thread safe.
Unlike most other tokenizers, the delimiters in strtok can be different for each subsequent token, and can even depend on the contents of the previous tokens.
// Run this code
strcspn of only the characters not found in another byte string
strspn of only the characters found in another byte string