С++ 11 Соответствие регулярных выражений
Я пытаюсь довольно простое регулярное совпадение в С++ 11 (используя gcc 4.7.2), но у меня много проблем. Попытка построить шаблон с помощью
std::regex unquoted(R"regex(\s*([^",]+)\s*)regex");
заставляет конструктор бросать исключение std::regex_error
с кодом std::regex_constants::error_escape
. Несколько тестировщиков регулярных выражений в Интернете не имеют проблем с одним и тем же выражением, и я пробовал использовать разные варианты синтаксиса безрезультатно. Есть ли что-то принципиально иное в синтаксисе регулярного выражения С++, которое я не понимаю?
Ответы
Ответ 1
См. gcc stdС++ 11 страница статуса реализации - регулярные выражения не поддерживаются как gcc 4.8
Изменить для потомков. Как уже упоминалось в комментариях, библиотека регулярных выражений теперь находится в libstdc++
и должна находиться в gcc 4.9 и далее.