zoukankan      html  css  js  c++  java
  • 字符串的查找删除

     

    题目描述

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

     

    输入

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

     

    输出

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

     

    样例输入 Copy

    in
    #include 
    int main()
    {
    
    printf(" Hi ");
    }

     

    样例输出 Copy

    #clude
    tma()
    {
    
    prtf("Hi");
    }

     

    提示

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

    思路:
    题目中删除字符要求不分大小写,则可将先将原字符存储在二维数组,再讲字母全部转化为小写进行比较。

    判断逻辑:遍历字符串,某字符与短字符第一个字符相同;在判断下一位字符是否相同,直至完全相同,完全相同则跳过;

    #include<bits/stdc++.h>
    using namespace std;
    int main() {
        string s1;
        cin >> s1;
        for (int i = 0; i < s1.size(); i++) {
            s1[i] = tolower(s1[i]);
        }
        getchar();
        string a, b;
        while(getline(cin, a)) {
            b = a;
            for (int i = 0; i < b.size(); i++) {
                b[i] = tolower(b[i]);
            }
            int t = b.find(s1, 0);
            while (t != string::npos) {
                a.erase(t, s1.size());
                b.erase(t, s1.size());
                t = b.find(s1, 0);
            }
            t = b.find(" ", 0);
            while (t != string::npos) {
                a.erase(t, 1);
                b.erase(t, 1);
                t = b.find(" ", 0);
            }
            cout << a << endl;
        }
        return 0;
    }
    唐舞麟——武魂:蓝银皇、斗凯:金龙月语、身份:史莱克院长、唐门门主
  • 相关阅读:
    函数
    字符编码转换
    文件读写与修改
    Java期末项目——校园商铺平台(三)
    Java期末项目——校园商铺平台(二)
    Java期末项目——校园商铺平台(一)
    LDAP & Implementation
    RESTful Levels HATEOAS
    隔离级别
    Servlet CDI Analysis
  • 原文地址:https://www.cnblogs.com/fangzm/p/13641911.html
Copyright © 2011-2022 走看看