Estoy simbolizando con lo siguiente, pero no estoy seguro de cómo incluir los delimitadores.Tokenizar una cadena e incluir delimitadores en C++
void Tokenize(const string str, vector<string>& tokens, const string& delimiters)
{
int startpos = 0;
int pos = str.find_first_of(delimiters, startpos);
string strTemp;
while (string::npos != pos || string::npos != startpos)
{
strTemp = str.substr(startpos, pos - startpos);
tokens.push_back(strTemp.substr(0, strTemp.length()));
startpos = str.find_first_not_of(delimiters, pos);
pos = str.find_first_of(delimiters, startpos);
}
}
1 para la mención Boost.Tokenizer –
He editado m y publicación para incluir toda la función. Veo lo que hizo, pero los delimitadores serán una cadena y cada carácter de la cadena será un delimitador. Pasó así ",.! \ N" Así que una coma, un punto, una exclamación y una nueva línea se insertarán en el vector también, pero no en el espacio. De esta forma puedo unirme al vector y usar un espacio entre los elementos del vector y reconstruir la cadena. – Jeremiah
coma, punto, exclamación y nueva línea que incluye el espacio serán los delimitadores. lo siento quería dejarlo claro. – Jeremiah