0 / 0 / 0
Регистрация: 19.04.2018
Сообщений: 7
1

Найти все вхождения подстроки в строку и удалить их из исходной строки

27.05.2018, 14:21. Показов 1897. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ввести с экрана строку и подстроку. Найти все вхождения подстроки в строку и удалить
их из исходной строки.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.05.2018, 14:21
Ответы с готовыми решениями:

Ввести с экрана строку и подстроку. Найти все вхождения подстроки в строку и удалить их из исходной строки
Ввести с экрана строку и подстроку. Найти все вхождения подстроки в строку и удалить их из...

Найти в исходной строке все вхождения заданной подстроки и заменить их на другую строку
Доброго времени суток! Помогите, пожалуйста, с задачей. Буду премного благодарна! Найти в...

Найти в исходной строке все вхождения заданной подстроки и заменить их на другую строку
Найти в исходной строке все вхождения (но не более девяти) заданной подстроки и заменить их на...

Найти и заменить в исходной строке все вхождения заданной подстроки
Найти в исходной строке все вхождения (но не более девяти) заданной подстроки и заменить их на...

3
Модератор
Эксперт С++
13502 / 10754 / 6409
Регистрация: 18.12.2011
Сообщений: 28,698
27.05.2018, 14:24 2
См. ссылки внизу страницы
0
1505 / 968 / 812
Регистрация: 30.04.2016
Сообщений: 3,334
04.07.2018, 22:34 3
Данил12322, здравствуйте! Если по-простому, то так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    string s1, s2;
    cout << "Enter a string:\n";
    getline(cin, s1);
    cout << "Enter a substring:\n";
    getline(cin, s2);
    s1 = regex_replace(s1, regex(s2), "");
    cout << "Target string:\n" << s1 << "\n";
    system("pause");
    return 0;
}
1
838 / 641 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
05.07.2018, 12:48 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include <cstring>
 
char* remove_str(char* s1, const char* s2){
    char* t = s1;   
    if((s1 = std::strstr(s1, s2)) == NULL)
        return t;
 
    const size_t n = std::strlen(s2);
    for(char* p = s1; *s1; *s1 = *p){
        if(!std::strncmp(p, s2, n))
            p += n;
        else {
            ++s1;
            ++p;
        }
    }
    return t;
}
 
int main(void){
    const int n1 = 256;
    const int n2 = 32;
    char s1[n1], s2[n2];
 
    std::cout << "Enter string: ";
    std::cin.getline(s1, n1);
 
    std::cout << "Enter substring: ";
    std::cin.getline(s2, n2);
    std::cin.sync();
 
    std::cout << remove_str(s1, s2) << std::endl;
    std::cin.get();
    return 0;
}
0
05.07.2018, 12:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.07.2018, 12:48
Помогаю со студенческими работами здесь

Нужно удалить все подстроки из исходной строки
Добрый день! Задача &quot;Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0 . Если...

Удалить все вхождения подстроки в строку в порядке слева направо
написать функцию, которая удаляет все вхождения подстроки в строку в порядке слева направо.

Удалить из строки все вхождения заданной подстроки
Даны подстрока и строка. Удалить из строки все вхождения заданной подстроки помогите решить!!!

Найти все вхождения подстроки в строку
Задача: Найти все вхождения подстроки в строку. На языке C++


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru