Como combinar vários resultados usando std :: regex
por exemplo. Se eu tiver uma string como "primeiro segundo terceiro adiante" e desejar corresponder cada palavra em uma operação para produzi-las uma a uma.
Eu apenas pensei que "(\ b \ S * \ b) {0,}" funcionaria. Mas, na verdade, não funcionou.
O que devo fazer?
Aqui está o meu código:
#include<iostream>
#include<string>
using namespace std;
int main()
{
regex exp("(\\b\\S*\\b)");
smatch res;
string str = "first second third forth";
regex_search(str, res, exp);
cout << res[0] <<" "<<res[1]<<" "<<res[2]<<" "<<res[3]<< endl;
}
Estou ansioso por sua ajuda. :)