#include <iostream>
#include <string>
int main() {
std::string s = "JACK1940383DAVID30284HAROLD68372TROY4392";
std::string::size_type start = 0, end;
while ((end = s.find_first_of("0123456789", start)) != std::string::npos) {
std::string name = s.substr(start, end-start);
start = end;
int number;
if ((end = s.find_first_not_of("0123456789", start)) != std::string::npos) {
number = std::stoi(s.substr(start, end-start));
}
else {
number = std::stoi(s.substr(start));
}
start = end;
// use name and number as needed...
std::cout << name << '/' << number << std::endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgoKaW50IG1haW4oKSB7CglzdGQ6OnN0cmluZyBzID0gIkpBQ0sxOTQwMzgzREFWSUQzMDI4NEhBUk9MRDY4MzcyVFJPWTQzOTIiOwoJc3RkOjpzdHJpbmc6OnNpemVfdHlwZSBzdGFydCA9IDAsIGVuZDsKCQoJd2hpbGUgKChlbmQgPSBzLmZpbmRfZmlyc3Rfb2YoIjAxMjM0NTY3ODkiLCBzdGFydCkpICE9IHN0ZDo6c3RyaW5nOjpucG9zKSB7CgkgICAgc3RkOjpzdHJpbmcgbmFtZSA9IHMuc3Vic3RyKHN0YXJ0LCBlbmQtc3RhcnQpOwogICAgCXN0YXJ0ID0gZW5kOwoKICAgIAlpbnQgbnVtYmVyOwogICAgCWlmICgoZW5kID0gcy5maW5kX2ZpcnN0X25vdF9vZigiMDEyMzQ1Njc4OSIsIHN0YXJ0KSkgIT0gc3RkOjpzdHJpbmc6Om5wb3MpIHsKICAgICAgICAJbnVtYmVyID0gc3RkOjpzdG9pKHMuc3Vic3RyKHN0YXJ0LCBlbmQtc3RhcnQpKTsKCSAgICB9CiAgICAJZWxzZSB7CiAgICAgICAgCW51bWJlciA9IHN0ZDo6c3RvaShzLnN1YnN0cihzdGFydCkpOwogICAgCX0KCSAgICBzdGFydCA9IGVuZDsKCiAgICAJLy8gdXNlIG5hbWUgYW5kIG51bWJlciBhcyBuZWVkZWQuLi4KCQlzdGQ6OmNvdXQgPDwgbmFtZSA8PCAnLycgPDwgbnVtYmVyIDw8IHN0ZDo6ZW5kbDsKCX0KCQoJcmV0dXJuIDA7Cn0=