(replace find)nyoj113-字符串替换

113-字符串替换


内存限制:64MB 时间限制:3000ms 特判: No
通过数:171 提交数:388 难度:2

题目描述:

编写一个程序实现将字符串中的所有"you"替换成"we"

输入描述:

输入包含多行数据 

每行数据是一个字符串,长度不超过1000 
数据以EOF结束

输出描述:

对于输入的每一行,输出替换后的字符串

样例输入:

you are what you do

样例输出:

we are what we do

用find()找you的位置,然后用replace替换。
C++代码:
#include<iostream>
#include<string>
using namespace std;
int main(){
    string s;
    while(getline(cin,s)){
        string s1 = "you";
        string s2 = "we";
        int ans = s.find(s1,0);//从下标为0开始寻找。 
        while(ans>=0){
            s.replace(ans,3,s2);    //replace(a,b,c),a指的是"you"的位置,b指的是要替换的长度,c指的是"we"。 
            ans = s.find(s1,ans+1);
        }
        cout<<s<<endl;
    }
    return 0;
}
原文地址:https://www.cnblogs.com/Weixu-Liu/p/10532009.html