Zdravím!
Mám takový primitivní dotaz. Mám string obsahující např.: "slovo\r\nDruhéSlovo\r\nTřetíSlovo\r\n";
a chtěl bych ho rozdělit na 3 stringy: string1[0] = "slovo"; string1[1] = "DruhéSlovo"; string1[2] = "TřetíSlovo";
Pomocí std::vector<string> ukládám do pole stringů.
Zatím mám toto:
regex rx("[^\\s]+\r\n");
sregex_iterator FormatedFileList(text.begin(), text.end(), rx), rxend;
while(FormatedFileList != rxend)
{
FileName.push_back(FormatedFileList->str().c_str());
++FormatedFileList;
}
Ale std::regex bohužel vymaže slova před mezerou, takže když mám string "jedno slovo\r\n", tak mi vyleze pouze "slovo".
Se std::regex pracuji prvně, tak ani nevím, jak pořádně funguje a hlavně bych se mu chtěl vyvarovat a udělat si to po svém, pokud ale nebude jiného zbytí a půjde použít std::regex bez toho, aniž by vynechával slova, spokojil bych se s tím.
Předem Vám děkuji za jakékoliv rady!