/*
正则表达式
头文件:#include
说明:代码通过GCC编译后正常运行,VC 2019编译报错。
*/
#include
#include
#include
using namespace std;
int main(int argc, char** argv)
{
string data = R"(Jack says,“Ok,I want to go to work. What can I do for you?”
John says, “No, thank you. I want to handle it myself.”)";
string pattPre = "(“.*?)";
string pattSuf = "(.*?”)";
string pattToMatch = "I";
string strPatt = pattPre + pattToMatch + pattSuf;
regex patt(strPatt);
//regex patt(R"((“.*?)I(.*?”))");
string ret = regex_replace(data, patt, "$1我$2");
while(regex_search(ret,patt))
{
ret = regex_replace(ret, patt, "$1我$2");
}
cout << ret;
return EXIT_SUCCESS;
}
gcc正常编译运行,vc2019编译报错。哪位知道为什么,还请告诉我。谢谢!
PS:附上Python实现的链接如下: