我有以下可执行文件。我用gcc 4.7.2(g ++ foo.cc -std = c ++ 11)编译它。
在运行时,抛出异常regex_error。
我做错了什么?
#include <regex>
int main(int, char**){
std::regex re("\\d");
}
UPDATE 异常中的错误代码是error_escape。所以我尝试了“\\ d”。它在运行时不会失败,但我不匹配“1”,但它匹配“\ d”。所以这显然不是我想要的
答案 0 :(得分:1)
答案 1 :(得分:-3)
为什么不抓住它?
#include <regex>
#include <iostream>
int main(int, char**){
try {
std::regex re("\\d");
} catch(std::exception const& e) {
std::cout << e.what() << "\n";
}
}