Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/23: Рейтинг темы: голосов - 23, средняя оценка - 5.00
Ане4кA
1 / 1 / 0
Регистрация: 05.05.2011
Сообщений: 66
#1

Поиск подстроки внутри данной строки, замена найденной подстроки на другую строку

05.05.2011, 18:24. Просмотров 4566. Ответов 2
Метки нет (Все метки)

Выполнить поиск подстроки внутри данной строки,замену найденной подстроки на другую строку
Пример
Исходная строка:
aaaabbbaaa
Заменяемая подстрока: bbb
Заменяющая подстрока: сссс
Результат:аааассссааа

Пока получается только вот что

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <cstdlib>
#include <iostream>
#include <string>#include <stdio>
 
using namespace std;
 
int main(int argc, char *argv[])
{char q[80];
int i;
printf(" Введите строку\n");
scanf("%s",q);
i=0;
while(q[i]!='\0')
{if(q[i]!='a')
q[i]='c';
i++;}
printf(" результат:%s",q);
    system("PAUSE");
    return EXIT_SUCCESS;
}
 Комментарий модератора 
Используйте теги форматирования кода!

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2011, 18:24
Ответы с готовыми решениями:

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

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

Распечатать все строки файла, содержащие заданную строку в качестве подстроки
Программированием занимаюсь месяц, но что-то сижу на этой задаче долго. Нужно...

Функция - Pos(s,s1). Назначение - поиск первого вхождения подстроки s1 в строку s (аналогичная функция C - strstr)
Функция - Pos(s,s1). Назначение - поиск первого вхождения подстроки s1 в строку...

В строке символов заменить все вхождения подстроки p на не более чем n символов подстроки q
Составить функцию Zam(s,p,q,n), которая в строке символов s заменяет все...

2
asics
Freelance
Эксперт С++
2854 / 1789 / 355
Регистрация: 09.09.2010
Сообщений: 3,841
05.05.2011, 18:51 #2
Цитата Сообщение от Ане4кA Посмотреть сообщение
Выполнить поиск подстроки внутри данной строки,замену найденной подстроки на другую строку
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
#include <iostream>
#include <string>
#include <windows.h>
 
int main(){
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  std::string src_str, fnd_str, ins_str;
  std::cout << "\n\nИсходная строка = ";
  getline(std::cin, src_str);
  std::cout << "\n\nЗаменяемая подстрока = ";
  getline(std::cin, fnd_str);
  std::cout << "\n\nЗаменяющая подстрока = ";
  getline(std::cin, ins_str);
  size_t begin_idx_fnd_str = src_str.find(fnd_str);
  if(begin_idx_fnd_str == std::string::npos){
    std::cerr << "\n\n\tПодстрока не найдена" << std::endl;
    return 1;
  }
  src_str.erase(begin_idx_fnd_str, fnd_str.length());
  src_str.insert(begin_idx_fnd_str, ins_str);
  std::cout << "\n\n\tРезультат = " << src_str << std::endl;
  return 0;
}
1
igorrr37
1863 / 1481 / 749
Регистрация: 21.12.2010
Сообщений: 2,473
Записей в блоге: 11
05.05.2011, 20:43 #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <string.h>
 
int main(){
    char *text="bbbbbbaaaaabbbbb", res[BUFSIZ], *sWhat="bbb", *sWith="cccc"
    , *a=text, *b=res;
    for(; *b=*a; ++a, ++b){
        if(!strncmp(a, sWhat, strlen(sWhat))){
            strcpy(b, sWith);
            a+=strlen(sWhat)-1;
            b+=strlen(sWith)-1;
        }
    }
    puts(res);
    return 0;
}
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.05.2011, 20:43

Разбить строку на подстроки
Собственно, нужно следующее: пользователь вводит строку, например: &quot;aaa bbb...

Разделить строку на подстроки
Дана строка символов, состоящая из произвольного текста, слова разделены...

Разделить строку на подстроки
В общем, есть текст: char text =...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru