#include <string>
#include <iostream>
#include <regex>
int main() {
std::regex date_pat1{ R"(\d{2}\.\d{2}\.\d{4})" };
std::string s = "20.02.1912 and 02.08.1756.";
std::vector<std::string> res;
for(std::sregex_iterator i = std::sregex_iterator(s.begin(), s.end(), date_pat1);
i != std::sregex_iterator();
++i)
{
std::smatch m = *i;
res.push_back(m.str());
}
// Демо
for (auto i: res) {
std::cout << i << std::endl;
}
return 0;
}
I2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8cmVnZXg+CgppbnQgbWFpbigpIHsKCXN0ZDo6cmVnZXggZGF0ZV9wYXQxeyBSIihcZHsyfVwuXGR7Mn1cLlxkezR9KSIgfTsKCXN0ZDo6c3RyaW5nIHMgPSAiMjAuMDIuMTkxMiBhbmQgMDIuMDguMTc1Ni4iOwoJc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHJlczsKCQoJZm9yKHN0ZDo6c3JlZ2V4X2l0ZXJhdG9yIGkgPSBzdGQ6OnNyZWdleF9pdGVyYXRvcihzLmJlZ2luKCksIHMuZW5kKCksIGRhdGVfcGF0MSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAhPSBzdGQ6OnNyZWdleF9pdGVyYXRvcigpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICsraSkKCXsKCQlzdGQ6OnNtYXRjaCBtID0gKmk7CgkJcmVzLnB1c2hfYmFjayhtLnN0cigpKTsKCX0KCS8vINCU0LXQvNC+Cglmb3IgKGF1dG8gaTogcmVzKSB7CgkJc3RkOjpjb3V0IDw8IGkgPDwgc3RkOjplbmRsOwoJfQoKCXJldHVybiAwOwp9Cg==