【C++】之''删除子串''

老师平时布置的希冀系统上的作业答案,仅供参考!

【问题描述】

编写一个程序,当在一个字符串中出现子串时就删除它。

【输入形式】

用户在第一行输入一个字符串,用户在第二行输入一个子串。

【输出形式】

程序在下一行输出删除其中所有子串后的字符串。如果字符串不包含子串则输出原字符串本身。

【样例输入】

I am a boy!
a
【样例输出】

I m boy!

【样例说明】

用户首先输入字符串I am a boy!,然后输出子串a,程序会寻找字符串中的子串删除它,最后 将删除后的结果输出:I#m##boy! #表示空格。

【参考答案】

#include<iostream>
#include<string>
using namespace std;
int main()
{
    string a;
    getline(cin,a);
    string b;
    getline(cin,b);
    int site=0,bc = b.length();
    string c;
    while((a.find(b,site))!=string::npos)
    {
        site=a.find(b,site);
        a.replace(site,bc,c);
    }
    cout<<a;
return 0;
}
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容