0

为什么这个 C++11 代码会抛出 regex_error?

string s{R"((http)(s)?(:\/\/)(www\.)?([^ ]*))"};
regex r{s}; // throws regex_error

我一直在互联网上寻找正确的转义,我尝试了多种组合,但我认为我的转义是正确的。我究竟做错了什么?

4

1 回答 1

3

GCC 显然还没有真正支持正则表达式。
查看状态页面: http: //gcc.gnu.org/onlinedocs/libstdc++/manual/status.html

正如评论所建议的那样,您现在最好使用 boost。带有 libc++ 的 Clang 也已经有了正则表达式。

于 2013-07-26T21:24:06.427 回答