#include <iostream>
#include <vector>
#include <regex>
int main() {
const std::regex reg(R"(start:\s*(\d+)\s*end:)");
std::smatch match;
std::string s = "garbage 111222 garbage ... 999888 fewfew... start: 123456 end: start: 654321 end:";
std::vector<std::string> results(std::sregex_token_iterator(s.begin(), s.end(), reg, 1),
std::sregex_token_iterator());
for (auto result : results)
{
std::cout << result << std::endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8cmVnZXg+CgppbnQgbWFpbigpIHsKICAgY29uc3Qgc3RkOjpyZWdleCByZWcoUiIoc3RhcnQ6XHMqKFxkKylccyplbmQ6KSIpOwogICBzdGQ6OnNtYXRjaCBtYXRjaDsKICAgc3RkOjpzdHJpbmcgcyA9ICJnYXJiYWdlIDExMTIyMiBnYXJiYWdlIC4uLiA5OTk4ODggZmV3ZmV3Li4uIHN0YXJ0OiAgICAgICAgMTIzNDU2ICAgICAgIGVuZDogICAgIHN0YXJ0OiAgICAgICAgIDY1NDMyMSAgICAgZW5kOiI7CiAgIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiByZXN1bHRzKHN0ZDo6c3JlZ2V4X3Rva2VuX2l0ZXJhdG9yKHMuYmVnaW4oKSwgcy5lbmQoKSwgcmVnLCAxKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6c3JlZ2V4X3Rva2VuX2l0ZXJhdG9yKCkpOwoKICAgZm9yIChhdXRvIHJlc3VsdCA6IHJlc3VsdHMpCiAgIHsKICAgICAgc3RkOjpjb3V0IDw8IHJlc3VsdCA8PCBzdGQ6OmVuZGw7CiAgIH0KCiAgIHJldHVybiAwOwp9