регулярные выражения , время
программа выводит не самую длинную часть , то есть пример (14:45 am) - будет выведено 14:45, а не 4:45 am
#include <string>
#include <iostream>
#include <cmath>
#include <regex>
using namespace std;
int main() {
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
string s;
while (getline(cin, s)) {
smatch result;
regex regular(
"((1[0-2]|0?[1-9]):([0-5][0-9]) ([AaPp][Mm]))|((0[0-9]|1[0-9]|2[0-3]):[0-5][0-9])"
);
while (regex_search(s, result, regular)) {
cout << result.str() << endl;
s = result.suffix().str();
}
}
return 0;
}