问题描述
- 关于C++ string 的问题 10C
- 实现C++ string中一个函数
函数形式为replace(S1,i,jS2)
S1是string对象,i表示从S1对象的i位置开始删除长度为j的字符串,并用S2替换这个字符串。
能否给个思路?
解决方案
如果你要用数组的话,程序要满足一个条件,strlen(S2)=j-i;
类似的程序,你可以参考写一下#include
#include
using namespace std;
int main(){
string a;/////指定串,可根据要求替换
string b;////要查找的串,可根据要求替换
string c;
cin>>a>>b>>c;
int pos;
pos = a.find(b);////查找指定的串
while (pos != -1)
{
a.replace(posb.length()c);////用新的串替换掉指定的串
pos = a.find(b);//////继续查找指定的串,直到所有的都找到为止
}
cout<<a<<endl;
return 0;
}
解决方案二:
关于C++中的函数返回局部string的问题
c++ string字符串问题
c++ string的长度问题
解决方案三:
把string转换成数组就可以了,用sizetype类型就可以遍历来
解决方案四:
需要对s2的数据的长度做个判断s2.size()
如果小于 j-i,补空格
如果大于,取部分
(当然之前的j>i是必需的)
时间: 2024-11-03 03:21:01