当我使用方括号时,正则表达式会抛出错误?

时间:2015-02-21 22:44:06

标签: c++ regex

在正则表达式字符串中使用方括号时,我得到了这个:

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)并且它没有抛出任何错误。我不熟悉编译器之间的差异,但我不知道应该/不应该使用哪些。是否有一个普遍接受的“最佳”编译器?

0 个答案:

没有答案