Форум программистов, компьютерный форум CyberForum.ru

Ввести строку и два слова, заменить все вхождения первого слова на второе - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.86
Temoffey
 Аватар для Temoffey
20 / 40 / 0
Регистрация: 21.11.2010
Сообщений: 96
21.11.2010, 21:43     Ввести строку и два слова, заменить все вхождения первого слова на второе #1
Возможно ли создание такой программы:
Ввести строку и два слова, заменить все вхождения первого слова
на второе.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2010, 21:43     Ввести строку и два слова, заменить все вхождения первого слова на второе
Посмотрите здесь:

C++ заменить все повторяющиеся слова на S##, где ## - номер слова
C++ Ввести строку и слово, удалить все вхождения слова и вывести строку
Вывести строку, в которой все вхождения первого слова заменены на второе слово C++
Ввести с клавиатуры строку. Выдать на экран все слова из этой строки ... C++
Необходимо ввести строку символов, например два или три слова C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
21.11.2010, 22:11     Ввести строку и два слова, заменить все вхождения первого слова на второе #2
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
37
38
39
40
//==================================================
#include <iostream>
#include <string>
#include <vector>
#include <sstream>
#include <algorithm>
//==================================================
typedef std::string                T_str;
typedef std::vector<T_str>    T_vec_str;
//==================================================
void foo(T_str str)
{
    std::cout << str << ' ';
}
int main()
{
    T_str str, word, _word, temp;
    std::cout << "Enter string: ";
    getline(std::cin, str);
    std::cout << "Enter first word: ";
    std::cin >> word;
    std::cout << "Enter second word: ";
    std::cin >> _word;
    std::istringstream ist(str);
    T_vec_str vec_str;
    while(ist >> temp)
    {
        vec_str.push_back(temp);
    }
    for(int i = 0; i < vec_str.size(); ++i)
    {
        if(vec_str[i] == word)
        {
            vec_str[i] = _word;
        }
    }
    std::for_each(vec_str.begin(), vec_str.end(), foo);
    return 0;
}
//==================================================
Оленька*
2 / 2 / 0
Регистрация: 15.12.2010
Сообщений: 58
20.12.2010, 20:16     Ввести строку и два слова, заменить все вхождения первого слова на второе #3
Можно пожалуйста пояснить, что делаеться в программе.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
20.12.2010, 20:19     Ввести строку и два слова, заменить все вхождения первого слова на второе #4
Оленька*, Разделяем строку на слова, заносим все слова в вектор, проходимся по вектору, если некое слово равняеться первому, меняем его на второе.
Оленька*
2 / 2 / 0
Регистрация: 15.12.2010
Сообщений: 58
20.12.2010, 20:23     Ввести строку и два слова, заменить все вхождения первого слова на второе #5
Спасибо, а используемые библиотеки действуют на MVS 2006 ?
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
20.12.2010, 20:24     Ввести строку и два слова, заменить все вхождения первого слова на второе #6
Оленька*, Да, конешно.
Оленька*
2 / 2 / 0
Регистрация: 15.12.2010
Сообщений: 58
24.12.2010, 16:02     Ввести строку и два слова, заменить все вхождения первого слова на второе #7
Asics , можете пожалуйста пояснить действия в программе , просто я не очень понимаю как все происходит
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2010, 16:07     Ввести строку и два слова, заменить все вхождения первого слова на второе
Еще ссылки по теме:

Ввести строку. Выдать все слова, которые имеют длину больше, чем длина последнего слова строки C++
C++ Определить, можно ли из букв первого слова получить второе
Заменить все вхождения первого слова на второе C++

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

Или воспользуйтесь поиском по форуму:
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
24.12.2010, 16:07     Ввести строку и два слова, заменить все вхождения первого слова на второе #8
Оленька*, Смотри пост #4
Yandex
Объявления
24.12.2010, 16:07     Ввести строку и два слова, заменить все вхождения первого слова на второе
Ответ Создать тему
Опции темы

Текущее время: 23:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru