#include <iostream>
#include <regex>
#include <string>
using namespace std;
int main() {
string s = "server ('m1.labs.terada')ta.com') username ('user5') password('user)5') dbname ('default') ";
regex re("\\W*\\(\'[!-~]+\'\\)\\W*");
sregex_token_iterator i(s.begin(), s.end(), re, -1);
sregex_token_iterator j;
unsigned count = 0;
while(i != j)
{
string str1 = *i;
cout <<"token = "<<str1<< endl;
i++;
count++;
}
cout << "There were " << count << " tokens found." << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8cmVnZXg+CiNpbmNsdWRlIDxzdHJpbmc+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCXN0cmluZyBzID0gInNlcnZlciAoJ20xLmxhYnMudGVyYWRhJyl0YS5jb20nKSB1c2VybmFtZSAoJ3VzZXI1JykgcGFzc3dvcmQoJ3VzZXIpNScpIGRibmFtZSAoJ2RlZmF1bHQnKSAiOwoJcmVnZXggcmUoIlxcVypcXChcJ1shLX5dK1wnXFwpXFxXKiIpOwoJc3JlZ2V4X3Rva2VuX2l0ZXJhdG9yIGkocy5iZWdpbigpLCBzLmVuZCgpLCByZSwgLTEpOwoJc3JlZ2V4X3Rva2VuX2l0ZXJhdG9yIGo7Cgl1bnNpZ25lZCBjb3VudCA9IDA7Cgl3aGlsZShpICE9IGopCgl7CgkgICAgc3RyaW5nIHN0cjEgPSAqaTsKCSAgICBjb3V0IDw8InRva2VuID0gIjw8c3RyMTw8IGVuZGw7CgkgICAgaSsrOwoJICAgIGNvdW50Kys7Cgl9Cgljb3V0IDw8ICJUaGVyZSB3ZXJlICIgPDwgY291bnQgPDwgIiB0b2tlbnMgZm91bmQuIiA8PCBlbmRsOwoJcmV0dXJuIDA7Cn0=