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

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

Войти
Регистрация
Восстановить пароль
 
mappy89
2 / 2 / 0
Регистрация: 16.10.2011
Сообщений: 179
#1

вырезать числа из строки - C++

19.02.2013, 14:17. Просмотров 478. Ответов 3
Метки нет (Все метки)

Доброго времени суток!

По rs-232 с контроллера присылается строка вида "a1111b2222c3333d4444y"

Каждому a,b,c,d соответсвует число (1111, 2222 для примера), количество цифр такого числа заранее неизвестно, как и порядок a,b,c,d, точно извесно, что y - завершение строки

Помогите, пожалуйста, вырезать эти числа из строки, совсем забыл как работать со строками )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2013, 14:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос вырезать числа из строки (C++):

Вырезать из строки слова - C++
С наступающим, господа :) Есть стринговская строка без знаков препинания с неопределенным количеством слов Необходимо вырезать из...

вырезать цифру из числа - C++
Собственно вопрос как на языке C++ вырезать цифру из числа, например у наc есть число 3987 и нам надо вырезать именно только восьмёрку. в...

Вырезать символ из строки, регулярное выражение - C++
Подскажите пожалуйста как из строки std::string s = "string\.txt"; вырезать сиивол "\"

Регулярные выражения, вырезать точку из строки - C++
Подскажите пожалуйса как из строки std::string s = "test st.ri.ng"; вырезать символ точку.

Как можно вырезать числа в массиве? - C++
Как можно вырезать числа в массиве?

Из строки вырезать слова, стоящие на четном месте - C++
Из строки вырезать слова, стоящие на четном месте.

3
ITcrusader
Эксперт С++
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
19.02.2013, 15:22 #2
Ну вот, мб подойдет? Модифицируешь еще, если чо:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <algorithm>
#include <iostream>
 
class isNumber
{
public:
    bool operator()(char arg)
    {
        return ( arg >= '0' && arg < '9' ) ? true : false;
    }
};
 
int main()
{
    char inputStr[] = "a1111b2222c3333d4444y";
    size_t len = sizeof(inputStr) / sizeof(char);
 
    std:: remove_if(inputStr, inputStr + len, isNumber());
    
    return 0;
}
0
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
19.02.2013, 17:57 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
char *restr(char str[]){
    char buf[1000];
    int i=0,j=0;
    while(str[i]!='y')
        if(str[i]<'0'&&str[i]>'9')
            buf[j++]=str[i++];
    buf[j++]=str[i];//присваиваем 'y' в конец, если не нужен можно убратьж
    char *str1=new char[j];
    for(i=0;i<j;i++)
        str[i]=buf[i];
    str[i]='\0';
    return str;
}
 
void main(){
    char str[]="a1111b2222c3333d4444y";
    char *str1=restr(str);
    cout<<str<<endl<<str1<<endl;
    delete[] str1;
    system("pause");
}
0
mappy89
2 / 2 / 0
Регистрация: 16.10.2011
Сообщений: 179
19.02.2013, 18:33  [ТС] #4
Всем спасибо!
0
19.02.2013, 18:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2013, 18:33
Привет! Вот еще темы с ответами:

Сформировать строку, считая числа начальной строки соответствующими ASCII-кодами символов результирующей строки - C++
Доброго времени суток! Прошу помощи. Дана строка в виде последовательности разделенных запятыми натуральных чисел 32 ... 255....

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

Сформировать две строки - первая содержит только числа из исходной строки, а вторая – только слова - C++
1.Дан текст, состоящий из предложений. Ввод текста осуществляется в несколько строк (не более 20). Признак завершения ввода – ввод пустой...

Вырезать куски массива - C++
Помогите, пожалуйста, решить программы на си++, если не решу мне хана, заранее спасибо: Дан одномерный массив А, состоящий из N различных...


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

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

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