Регулярное выражение в С++

238
31 мая 2017, 06:17
const tr1::regex rx("^(((0[1-9]|[12]\d|3[01])\.(0[13578]|1[02])\.((19|[2-9]\d)\d{2}))|((0[1-9]|[12]\d|30)\.(0[13456789]|1[012])\.((19|[2-9]\d)\d{2}))|((0[1-9]|1\d|2[0-8])\.02\.((19|[2-9]\d)\d{2}))|(29\.02\.((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))))$");
            tr1::smatch xResults;
            bool res = false;
            while (!res) {
                system("cls");
                cout << Lang::lang[31];
                getline(cin, temp);
                res = regex_match(temp,rx);
            }

Не могу понять почему не работает следующий код. В res всегда false. Тестил отдельно на сайте регулярное выражение, работает норм. В строке тоже всё нормально.

Answer 1

Для начала не пробовали вспомнить о том, что в C/C++ обратная косая черта в строке - служебный символ, так что \d надо записывать как \\d?

READ ALSO
Qt C++ layout выходит за пределы TabWidget

Qt C++ layout выходит за пределы TabWidget

Всем приветХочу добиться корректного расположения QToolBox в QTabWidget

395
Не работает javascript в нативном браузере Android

Не работает javascript в нативном браузере Android

Не работает javascript в нативном браузере AndroidПритом проблема не в браузере, потому что на других сайтах js работает

287
ExtJS Charts. Проблема подключения

ExtJS Charts. Проблема подключения

Стоит задача - рисовать графики при помощи функционала extjsПодключил extjs, jquery, и сам js файл:

309
Как запаковать в zip скриптом win x64?

Как запаковать в zip скриптом win x64?

Нижеприведеный скрипт отлично паковал файлы, но в новой win2008 R2 x64 почему то не пакуетПишет

297