您的位置:首页 > 其它

题目1168:字符串的查找删除

2017-07-29 10:29 405 查看
时间限制:1 秒

内存限制:32 兆

特殊判题:否

提交:6467

解决:2697

题目描述:

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

输入:

输入只有1组数据。

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

输出:

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

样例输入:
in
#include
int main()
{

printf(" Hi ");
}


样例输出:
#clude
tma()
{

prtf("Hi");
}


提示:

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

用到string 的相关函数,算是熟练了一次了。汗颜

#include<cstdio>
#include<iostream>
using namespace std;
int main(){
string ori="",res,s;
string x,y;
getline(cin,s);
for(int i=0;i<s.size();i++){
ori+=toupper(s[i]);
}
int len=s.size();
int k;
while(getline(cin,res)){
y="";
for(int i=0;i<res.size();i++){
y+=toupper(res[i]);
}
int index=0;
while((k=y.find(ori,index))!=string::npos){
y.erase(k,len);
res.erase(k,len);
index=k;
}
index=0;
while((k=res.find(" ",index))!=string::npos){//去掉空格
res.erase(k,1);
index=k;
}
cout<<res<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: