fork download
  1. #include<iostream>
  2. #include<cmath>
  3. #include<algorithm>
  4. #include<iomanip>
  5. #include<climits>
  6. #include<numeric>
  7. #include<set>
  8. #include<sstream>
  9. #include<map>
  10. #include<vector>
  11. #include<string>
  12. #include<regex>
  13.  
  14. using namespace std;
  15.  
  16. vector<string> split(string haystack, string needle) {
  17. vector<string> result;
  18. int start_pos = 0;
  19. int found_pos = haystack.find(needle, start_pos);
  20. while (found_pos != string::npos) {
  21. int count = found_pos - start_pos;
  22. string token = haystack.substr(start_pos, count);
  23. if (!token.empty()) {
  24. result.push_back(token);
  25. }
  26. start_pos = found_pos + needle.length();
  27. found_pos = haystack.find(needle, start_pos);
  28. }
  29. string token = haystack.substr(start_pos, haystack.length()-start_pos);
  30. if (!token.empty()) {
  31. result.push_back(token);
  32. }
  33. return result;
  34. }
  35. string nameConvert(const string& name) {
  36. const string DELIMITER = " ";
  37. stringstream builder;
  38. auto parts = split(name, DELIMITER);
  39. for (auto part : parts) {
  40. part[0] = toupper(part[0]);
  41. transform(part.begin()+1, part.end(),part.begin()+1, ::tolower);
  42. builder << part << DELIMITER;
  43. }
  44. return builder.str();
  45. }
  46. string dateConvert(const string& date) {
  47. const string DELIMITER = "/";
  48. stringstream builder;
  49. auto parts = split(date, DELIMITER);
  50. builder << setw(2) << setfill('0') << parts[0] << DELIMITER;
  51. builder << setw(2) << setfill('0') << parts[1] << DELIMITER;
  52. builder << parts[2];
  53. return builder.str();
  54.  
  55. }
  56.  
  57. int main() {
  58. string s;cin >> s;
  59. regex re("\\d+");
  60. sregex_iterator it(s.begin(), s.end(), re);
  61. sregex_iterator end;
  62.  
  63. for (;it != end;it++) {
  64. string number = it->str();
  65. number = regex_replace(number, regex("^0+(?!$)"), "");
  66. cout << number << endl;
  67. //number = regex_replace(number, regex("^0+"), "");
  68. //if (number.empty()) number = "0";
  69. }
  70. }
  71.  
  72.  
Success #stdin #stdout 0.01s 5276KB
stdin
Standard input is empty
stdout
Standard output is empty