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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Savras
-1 / 2 / 1
Регистрация: 03.01.2013
Сообщений: 10
#1

Удалить знаки пунктуации из строки - C++

19.02.2013, 12:20. Просмотров 943. Ответов 3
Метки нет (Все метки)

Все что вышло у меня.
C++
1
2
3
4
5
6
7
8
9
int main(){
    string str;
    getline(cin, str);
    for(string::size_type index=0; index!=str.size(); ++index){
        if(ispunct(str[index]))
            str[index]='';
        cout<<str[index];
    }
return 0;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2013, 12:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Удалить знаки пунктуации из строки (C++):

Удалить все знаки пунктуации - C++
Задано текст, слова которого разделены различными разделительными знаки. Удалить все знаки пунктуации. Текст произвольный , буду благодарен...

Создать новые строки, содержащие цифры, буквы, а также знаки пунктуации, выбранные из введенной строки - C++
Ввести с помощью клавиатуры строку произвольной длины. Создать новые строки, содержащие цифровые, буквенные символы, а также знаки...

Как убрать знаки пунктуации? - C++
Добрый вечер. Помогите, пожалуйста. Не могу дописать программу, чтобы в тексте убирались знаки пунктуации. Например, у меня при вводе...

Вывести на экран все знаки пунктуации. - C++
Пользователь вводит с клавиатуры строку – предложение с пробелами и знаками пунктуации длиной до 100 символов. Вывести на экран все знаки...

Удалить знаки препинания из строки - C++
Помогите на с отфильтровать строку таким образом, чтобы вместо знаков появлялись пробелы. Напимер задано рпраппрапа.пр:пр,ророро ...

Функция: удалить из строки все знаки препинания - C++
12. Написать функцию, которая удаляет из строки все знаки препинания. Заголовок функции: void deletePunct(char *s); Написать программу,...

3
coloc
погромист
410 / 246 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
19.02.2013, 12:56 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <cstring>
 
int main() {
    const int buff = 250;
    char test[buff] = " ";
    std::cin.getline( test, buff );
    for( int i = 0; i < buff; i++) {
        if( ispunct( test[i] )) {
            std::cout << "";
        } else {
            std::cout << test[i];
        }
    }
    
    return 0;
}
Добавлено через 5 минут
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <cstring>
#include <string>
 
int main() {
    const int buff = 250;
    std::string test;
    std::cin >> test;
    for( int i = 0; i < test.size(); i++) {
        if( ispunct( test[i] )) {
            std::cout << "";
        } else {
            std::cout << test[i];
        }
    }
    
    return 0;
}


Добавлено через 17 минут
Условие не так понял, исправил, но сделал через массивы
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <cstring>
 
int main() {
    const int buff = 250;
    char test[buff] = " ";
    char val[buff] = " ";
    std::cin.getline( test, buff );
    int j = 0;
    for( int i = 0; i < buff; i++) {
        if( !(ispunct( test[i] ))) {
            val[j] = test[i];
            ++j;
        }
    }
    std::cout << val;
    return 0;
}
1
Savras
-1 / 2 / 1
Регистрация: 03.01.2013
Сообщений: 10
19.02.2013, 12:58  [ТС] #3
да мне нужно было чтоб с использованием string, но теперь разобрался, спасибо за подсказку
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
19.02.2013, 13:33 #4
C++
1
str.erase(std::remove_if(str.begin(), str.end(), ispunct), str.end());
0
19.02.2013, 13:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2013, 13:33
Привет! Вот еще темы с ответами:

Удалить все знаки препинания и пробельные символы - C++
1. Даны строки, содержащие любые элементы алфавита языка С++. Удалить все знаки препинания и пробельные символы.

Вычеркните из строки все знаки препинания (с++) - C++
Здравствуйте, форумчане! Нужна помощь. Вычеркните из строки все знаки препинания Написать на с++

Как обработать арифметические знаки из командной строки? - C++
Нужно ввести знак (плюс,минус и т.д.),который будет влиять на последующие действия. Как его вставить в if(),не прибегая к замене различными...

Появляются непонятные знаки ММММ в конце строки :( - C++
int main(int args, const char * argv) { setlocale(LC_ALL, &quot;Russian&quot;); SetConsoleTextAttribute(hndl, FOREGROUND_GREEN |...


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

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

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