regex_replace问题

Blu*_*s76 3 c++ regex string c++11 visual-studio-2012

我正在使用C++ 11(Windows 7 64位,visual studio 2012)

我正在使用循环来替换另一个子串.我有一个文件,其数字用双斜杠(//)分隔.例如:

10//20//1 3//4//5 5//2//1 to 10 20 1 3 4 5 5 2 1
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用正则表达式时,似乎我做错了什么.什么都没发生.另外,我在哪里可以阅读有关正则表达式C++ 11的更多信息

string fData(data.substr(2));
string replaceStr("10//20//1 3//4//5 5//2//1");
regex r("//"
regex_replace(fData,r," ");
Run Code Online (Sandbox Code Playgroud)

但没有任何反应.

就像我之前说的那样,如果你还能指出一个我可以阅读更多关于这个的网页,除了答案.我有它工作,但我想开始使用正则表达式.

谢谢

Moh*_*ain 6

regex_replace不进行字符串的就地编辑; 它返回输出字符串.

例如: auto out = regex_replace(fData,r," ");

在此示例中,out将是预期值的字符串("10 20 1 3 4 5 5 2 1").这个备忘单非常有用(来自http://cpprocks.com/regex-cheatsheet/).请享用!