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

Очистить текст от символов кроме букв и пробелов - C++

Восстановить пароль Регистрация
 
MrJoke
0 / 0 / 0
Регистрация: 12.12.2013
Сообщений: 2
12.12.2013, 23:39     Очистить текст от символов кроме букв и пробелов #1
Как реализовать исходя из задания данного в заголовке, приведенным ниже способом?


1. Взять очередной символ в тексте
2. Если это не буква и не пробел, то удалить его
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2013, 23:39     Очистить текст от символов кроме букв и пробелов
Посмотрите здесь:

Из строки удалить все символы, кроме пробелов, не являющиеся буквами английского алфавита C++
Дана строка с набором случайных символов, при вводе 10 букв первые 5 букв становятся большими , вторые 5 букв маленькими C++
С исходной строки символов удалить символы, отличные от русских букв и пробелов C++
C++ Очистить текст от всяких знаков припинания
C++ Количество символов, отличных от латинских букв и пробелов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
12.12.2013, 23:52     Очистить текст от символов кроме букв и пробелов #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
#include <cctype>
 
int main()
{
    std::string str;
    std::cout <<"Stroka: ";
    getline (std::cin, str);
    int i = 0;
    while (i<str.size())
    {
        if (!isalpha(str[i]) && str[i]!=' ')
            str.erase (i,1);
        else ++i;
    }
    std::cout <<str <<std::endl;
    return 0;
}
StackOverflow
All rights reserved.
91 / 81 / 5
Регистрация: 03.08.2013
Сообщений: 258
13.12.2013, 00:02     Очистить текст от символов кроме букв и пробелов #3
MrJoke,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string someString = "some;;characters..with::different-symbols";
 
    size_t position = someString.find_first_not_of( "abcdifghijklmnopqrstuvwxyz " );
 
    while ( position != std::string::npos )
    {
        someString.erase( position, 1 );
        position = someString.find_first_not_of( "abcdefghijklmnopqrstuvwxyz " );
    }
 
    cout << someString << endl;
 
    return 0;
}
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,898
Записей в блоге: 2
Завершенные тесты: 1
13.12.2013, 00:12     Очистить текст от символов кроме букв и пробелов #4
C++
1
size_t position = someString.find_first_not_of( "abcdifghijklmnopqrstuvwxyz " );
а как быть с русским языком? А есть еще немецкий, французский и т.д.
StackOverflow
All rights reserved.
91 / 81 / 5
Регистрация: 03.08.2013
Сообщений: 258
13.12.2013, 00:25     Очистить текст от символов кроме букв и пробелов #5
Croessmah, виноват, исправлюсь:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string someString = "some;;characters..with::different-symbols";
 
    size_t position = someString.find_first_of( ";:.,/?" );
 
    while ( position != std::string::npos )
    {
        someString.erase( position, 1 );
        position = someString.find_first_of( ";:.,/?-" );
    }
 
    cout << someString << endl;
 
    return 0;
}
Yandex
Объявления
13.12.2013, 00:25     Очистить текст от символов кроме букв и пробелов
Ответ Создать тему
Опции темы

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