fork(7) download
  1. #include <iostream>
  2. #include <string>
  3. #include <vector>
  4. #include <regex>
  5.  
  6. using namespace std;
  7.  
  8. int main() {
  9. std::regex rx("'[^']*(?:''[^']*)*'");
  10. std::string sentence("server ('m1.labs.\\''tera\"da ta.com') username ('us *(er'')5') password('uer 5') dbname ('default')");
  11. std::vector<std::string> names(std::sregex_token_iterator(sentence.begin(), sentence.end(), rx),
  12. std::sregex_token_iterator());
  13.  
  14. for( auto & p : names ) cout << p << endl;
  15. return 0;
  16. }
Success #stdin #stdout 0s 16168KB
stdin
Standard input is empty
stdout
'm1.labs.\''tera"da  ta.com'
'us *(er'')5'
'uer 5'
'default'