#include <iostream>
#include <string>
#include <vector>
#include <regex>
using namespace std;
int main() {
std::regex rx("'[^']*(?:''[^']*)*'");
std::string sentence("server ('m1.labs.\\''tera\"da ta.com') username ('us *(er'')5') password('uer 5') dbname ('default')");
std::vector<std::string> names(std::sregex_token_iterator(sentence.begin(), sentence.end(), rx),
std::sregex_token_iterator());
for( auto & p : names ) cout << p << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8cmVnZXg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CglzdGQ6OnJlZ2V4IHJ4KCInW14nXSooPzonJ1teJ10qKSonIik7CglzdGQ6OnN0cmluZyBzZW50ZW5jZSgic2VydmVyICgnbTEubGFicy5cXCcndGVyYVwiZGEgIHRhLmNvbScpIHVzZXJuYW1lICgndXMgKihlcicnKTUnKSBwYXNzd29yZCgndWVyIDUnKSBkYm5hbWUgKCdkZWZhdWx0JykiKTsKCXN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBuYW1lcyhzdGQ6OnNyZWdleF90b2tlbl9pdGVyYXRvcihzZW50ZW5jZS5iZWdpbigpLCBzZW50ZW5jZS5lbmQoKSwgcngpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjpzcmVnZXhfdG9rZW5faXRlcmF0b3IoKSk7CgkKICAgIGZvciggYXV0byAmIHAgOiBuYW1lcyApIGNvdXQgPDwgcCA8PCBlbmRsOwogICAgcmV0dXJuIDA7Cn0=