给你三个string str oldstr newstr 用newstr替换str里的oldstr
来源:互联网 发布:游戏迷你主机知乎 编辑:程序博客网 时间:2024/06/07 23:28
#include<iostream> #include<string> #include<vector> using namespace std;/*void func(string &s, string &oldVal,const string &newVal){string::size_type size = oldVal.size();for (string::size_type i = 0;i<s.length()-size; i++){if (s.substr(i,size)==oldVal){s.replace(i, size, newVal);}}}*/void func1(string &s, string &oldValue, string &newValue){int _size = oldValue.size();string::iterator it1 = s.begin();string::iterator it2 = newValue.begin();string::iterator it3 = newValue.begin();for (it1; it1 <= (s.end() - oldValue.size() + 1); ++it1){it1 = s.erase(it1, it1 + _size);//返回的是最后一个被会删除的元素之后的位置s.insert(it1, it2, it3);//原因在于insert()函数返回}}void func(string &s, string &oldValue, string &newValue){int _size = oldValue.size();string::iterator it1 = s.begin();string::iterator it2 = newValue.begin();string::iterator it3 = newValue.end();for (; it1 <= (s.end() - _size + 1); ++it1){if ((s.substr(it1 - s.begin(), _size) == oldValue)){it1 = s.erase(it1, it1 + _size);it1 = s.insert(it1, it2, it3);//advance(it1, _size);it1 += _size;}}}int main(int argc, char**argv){string s = "2134bbaaaaabbaaa";string oldval = "bb";string newval = "kkk";func(s, oldval, newval);cout << s << endl;system("pause");return 0;}
阅读全文
0 0
- 给你三个string str oldstr newstr 用newstr替换str里的oldstr
- stl:string:将str中的oldstr替换为newstr
- c语言库函数【string.h】之 strrep_(char *src, char* oldStr, char * newStr)
- NewStr
- String str = "str"和String str = new String("str")的区别
- str.replace替换的用法
- C语言里的str
- String str; str=str.substring()
- string str = null 与 string str =""的区别
- String.indexof(str)的用法
- String str = null、String str = ""、String str = new String()中所声明对象str之间的区别:
- 教你用恶心的strtok函数来恶意修改const string &str 中的str
- str
- str()
- str
- str
- str
- str[] , *str , static str[]的区别
- UML五类十图(二) (第一次机房收费系统)
- 关于python+Selenium定位元素出错的问题
- 【福利时刻】Java面试题84集系列全集!有需要的小伙伴赶紧过来保存啦!
- oracle常用的函数
- Spring Cloud(一)服务的注册与发现(Eureka)
- 给你三个string str oldstr newstr 用newstr替换str里的oldstr
- Linux系统下 解决Qt5无法连接MySQL数据库的方法
- 十进制数转化为任意进制数
- TCP协议--应用程序的数据交换
- 使用Nginx+nginx-rtmp-module搭建直播服务器
- 四套卷第二套
- Spring Cloud(二)Consul 服务治理实现
- 无穷小微积分的转移公理
- 利用spring AOP原理 实现 DAO层SQL的监控,辅助开发