C++ 正则表达式中带大括号的正则表达式错误

C++ 正则表达式中带大括号的正则表达式错误,c++,regex,C++,Regex,我试图删除字符串中“:-”+):-(+”的所有实例,但编译器一直给我regex错误 我尝试过使用regex_常量::basic,将正则表达式切换到“:-”+):-(+”,并切换到MinGW的c++14版本 string a; cin>>a; regex r(":-\)+|:-\(+",regex_constants::basic); cout << regex_replace(a, r, ""); 字符串a; cin>>a; 正则表达式r(“:-\)+\:-\(+”,正

我试图删除字符串中“:-”+):-(+”的所有实例,但编译器一直给我regex错误

我尝试过使用regex_常量::basic,将正则表达式切换到“:-”+):-(+”,并切换到MinGW的c++14版本

string a;
cin>>a;
regex r(":-\)+|:-\(+",regex_constants::basic);
cout << regex_replace(a, r, "");
字符串a;
cin>>a;
正则表达式r(“:-\)+\:-\(+”,正则表达式u常量::基本);

无法删除字符串,如
:-)
:-((
使用

std::string a("Text:-) :-(((here");
std::regex r(":-\\)+|:-\\(+");      // Or std::regex r(R"(:-\)+|:-\(+)");
std::cout << regex_replace(a, r, "") << std::endl;
// => Text here
std::stringa(“Text:-):-((此处));
std::regex r(“:-\ \)+\:-\(+”)//或std::regex r(r)(:-\)+\:-\(+)”;

std::不能使用
regex r(“:-)+:-(+”,regex_常量::basic);
不幸的是,我以前试过,它似乎没有删除任何必要的表达式。你的意思是你有像
:-))和
:-(
?是的,似乎我把符号搞错了。谢谢!