zcmu——4925 字符串的查找删除

题目链接:

#include<cstdio>
#include<iostream>
#include<cmath>
#include<algorithm>
#include<vector>
using namespace std;
#define maxn 100010
typedef long long ll;
string mod;
string s,t;
int main()
{
    getline(cin,mod);
    for(int i=0;i<mod.size();i++)
        mod[i]=toupper(mod[i]);
    while(getline(cin,s))
    {
        t=s;
        for(int i=0;i<t.size();i++)
        {
            t[i]=toupper(t[i]);
        }
        int p=t.find(mod);
        while(p!=string::npos)
        {
            t.erase(p,mod.size());
            s.erase(p,mod.size());
            p=t.find(mod);
        }
        p=s.find(' ');
        while(p!=string::npos)
        {
            s.erase(p,1);
            p=s.find(' ');
        }
        cout<<s<<endl;
    }
    return 0;
}

字符串==string::npos

说明没找到

erase删除(起始位置,长度)

猜你喜欢

转载自blog.csdn.net/qq_42232118/article/details/82290818