-
题目描述:
-
给定一个短字符串(不含空格),再给定若干字符串,在这些字符串中删除所含有的短字符串。
-
输入:
-
输入只有1组数据。
输入一个短字符串(不含空格),再输入若干字符串直到文件结束为止。
-
输出:
-
删除输入的短字符串(不区分大小写)并去掉空格,输出。
-
样例输入:
-
in #include int main() { printf(" Hi "); }
-
样例输出:
-
#clude tma() { prtf("Hi"); }
-
提示:
-
注:将字符串中的In、IN、iN、in删除。
-
#include <iostream> #include <stdio.h> #include <string> #include <cctype> using namespace std; int main(){ string in, x = "" , str, y; int index, k; getline(cin, in); int len = in.size(); for (int i = 0; i < in.size(); i++) x += tolower(in[i]); while (getline(cin, str)){ y = ""; index = 0; for (int i = 0; i < str.size(); i++) y += tolower(str[i]); while ((k = y.find(x, index)) != string::npos){ y.erase(k, len); str.erase(k, len); index = k; } index = 0; while ((k = str.find(" ", index)) != string::npos){ y.erase(k, 1); str.erase(k, 1); index = k; } cout << str << endl; } return 0; }