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

Удаление слов из строки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ 11. Определить, есть ли среди цифр заданного целого трехзначного числа одинаковые http://www.cyberforum.ru/cpp-beginners/thread1013539.html
Определить, есть ли среди цифр заданного целого трехзначного числа одинаковые. пожалуйста,решите мне)))
C++ Определить, лежит ли заданная точка на одной из сторон треугольника, заданного координатами своих вершин Определить, лежит ли заданная точка на одной из сторон треугольника, заданного координатами своих вершин. Предусмотреть проверку возможности построения треугольника с заданными вершинами. http://www.cyberforum.ru/cpp-beginners/thread1013530.html
C++ Проверить, можно ли построить треугольник из отрезков с длинами x, y, z. Предусмотреть проверку вводимых данных на отрицательность
Проверить, можно ли построить треугольник из отрезков с длинами x, y, z. Предусмотреть проверку вводимых данных на отрицательность.
выписать все натуральные числа,взаимно простые с m, из отрезка [1;m-1] C++
выписать все натуральные числа,взаимно простые с m, из отрезка
C++ Выбрать наибольшее из трех заданных чисел http://www.cyberforum.ru/cpp-beginners/thread1013519.html
Выбрать наибольшее из трех заданных чисел
C++ Поверить, можно ли построить параллелограмм из отрезков с длинами x, y, u, w Поверить, можно ли построить параллелограмм из отрезков с длинами x, y, u, w. Предусмотреть проверку вводимых данных на отрицательность. подробнее

Показать сообщение отдельно
umnick_kh
 Аватар для umnick_kh
299 / 236 / 17
Регистрация: 06.12.2010
Сообщений: 527
20.11.2013, 21:32     Удаление слов из строки
Привет, нужно удалить из текста все слова, заканчивающиеся мягким знаком.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Russian");
    char str[100] = {"Один, два, три, пять, девять, десять, два"};
    char sep = 'ь';
        //Input: Один, два, три, пять, девять, десять, два
        //Result: Один, два, три, , , , два
    system("pause");
    return 0;
}
Хэлпните, пожалуйста, как это сделать?

Добавлено через 1 час 27 минут
Решено, можно закрывать.
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
41
42
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Russian");
    char str[100] = {"Один, два, три, пять, девять, десять, два"};
    cout<<"Input string: "<<str<<endl;
    char t_res[100];
    char res[100];
    int c = 0;
    memset(t_res,'\0',sizeof(t_res));
    memset(res,'\0',sizeof(res));
    for(int i = 0; str[i] != '\0'; ++i)
    {
        if(str[i] != 'ь')
        {
            t_res[i] = str[i];
            ++c;
        }
        else
        {
            for(int j = c+1; str[j] != ' '; --j)
            {
                t_res[j] = '*';
            }
        }
    }
    c = 0;
    for(int i = 0; i < sizeof(t_res); ++i)
    {
        if(t_res[i] != '\0' && t_res[i] != '*')
        {
            res[c] = t_res[i];
            ++c;
        }
    }
 
    cout<<"Output string: "<<res<<endl;
    system("pause");
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru