字符串的查找删除

题目描述

给定一个短字符串(不含空格),再给定若干字符串,在这些字符串中删除所含有的短字符串。

输入

输入只有1组数据。
输入一个短字符串(不含空格),再输入若干字符串直到文件结束为止。

输出

删除输入的短字符串(不区分大小写)并去掉空格,输出。

样例输入

in
#include 
int main()
{

printf(" Hi ");
}

样例输出

#clude
tma()
{

prtf("Hi");
}

提示

注:将字符串中的In、IN、iN、in删除。

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
string s,ts;
string sub;
void trans(string &xx){
    for(int i=0;i<xx.size();i++){
        if(xx[i]>='A'&&xx[i]<='Z') xx[i]+='a'-'A';
    }
}
int main(){
     
    cin>>sub;
    trans(sub);
    getchar();
    while(getline(cin,s)){
        ts=s;
        trans(s);
        string::size_type x=s.find(sub);
        while(x!=s.npos){
            for(int i=x;i<x+sub.size();i++){
                s[i]=' ';
            }
            x=s.find(sub);
        }
        for(int i=0;i<s.size();i++){
            if(s[i]!=' ') printf("%c",ts[i]);
        }
        cout<<endl;
    }
    return 0;
}
posted @ 2019-06-23 10:02  CCWUCMCTS  阅读(410)  评论(0编辑  收藏  举报