The find_first_not_of() function returns the first index of a character that is not part of the
passed string argument. Thus, this function returns the position of the first character that is not one of
the separators in delims. As usual for find functions, if no matching index is found, string::npos
is returned.
The inner loop iterates as long as the beginning of a word can be found: