前言 C++的string提供了replace方法来实现字符串的替换,但是有时候我们想要实现类似JAVA中的替换功能——将string中的某个字符a全部替换成新的字符b,这个功能在提供的replace方法中并没
前言
C++的string提供了replace方法来实现字符串的替换,但是有时候我们想要实现类似JAVA中的替换功能——将string中的某个字符a全部替换成新的字符b,这个功能在提供的replace方法中并没有实现。
不过只要再深入了解一下STL,就可以在变易算法中找到解决方案——使用#include<algorithm>中的replace算法即可。
测试代码如下:
#include<algorithm> #include<string> #include<iostream> using namespace std; int main() { string str="123/421657/abcd///456789"; cout << str << endl; replace(str.begin(),str.end(),'/',' '); cout << str << endl; return 0; }
运行结果如下:
可以看到,只要就实现了指定字符的替换。
需要注意的是,该方法只能将一个字符替换成另一个字符,即只能对单个字符进行操作。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对自由互联的支持。