XJOI1级19段 c++ 取代字符串中特定字符串

取代字符串中特定字符串

时间:0.2s 空间:32M

题目描述:
给你三个字符串a, b, and c,将a里面出现的b串都替换成c串

输入格式:
输入一行,包含三个字符串 ,|a|,|b|,|c|<=1000,替换后的串长<=1000

输出格式:
输出一个替换后的字符串

样例输入1:
ababa aba abc
 
样例输出1:
abcba
 

样例输入2:
abcabcabc abc abcabc
 
样例输出2:
abcabcabcabcabcabc

#include <iostream>
#include <string>
using namespace std;

string replaceSubstring(string str, string oldStr, string newStr) {
    size_t pos = 0;
    while ((pos = str.find(oldStr, pos)) != string::npos) {
        str.replace(pos, oldStr.length(), newStr);
        pos += newStr.length();
    }
    return str;
}

int main() {
    string a, b, c;
    cout << "请输入三个字符串(以空格分隔):";
    cin >> a >> b >> c;

    string result = replaceSubstring(a, b, c);
    cout << "替换后的字符串为:" << result << endl;

    return 0;
}