在正则表达式字符串中使用方括号时,我得到了这个:
terminate called after throwing an instance of 'std::regex_error'
what(): regex_error
以下程序运行良好:
#include <regex>
int main()
{
std::regex rx1("a");
return 0;
}
但这不是:
#include <regex>
int main()
{
std::regex rx1("[a]");
return 0;
}
它汇编得很好,我找不到任何其他人的例子,所以我真的很难过。我对c ++很陌生,所以我可能会遗漏一些令人眼花缭乱的东西,但有人可以解释一下是什么吗?
编辑 -
所以我使用ms visual c ++ 2010重新编译(我使用的是GCC)并且它没有抛出任何错误。我不熟悉编译器之间的差异,但我不知道应该/不应该使用哪些。是否有一个普遍接受的“最佳”编译器?