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

Поиск теста - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Простой шифратор http://www.cyberforum.ru/cpp-beginners/thread332257.html
Задача такая: пользователь вводит четырехзначное число, после этого программа отображает это число в шифрованном виде. Шифрование заключается в том, что к каждой цифре числа прибавляется число 7,...
C++ Borland C++ работает на OS 7 ? Borland C++ работает на OS 7 ? Не дублируйте темы - это нарушает правила форума. http://www.cyberforum.ru/cpp-beginners/thread332254.html
Поиск слова в тексте C++
Составить алгоритм поиска заданного слова в тексте. Слово и текст являются массивами символов заданной длины. Если заданное слово присутствует в тексте, то алгоритм должен возвращать номер позиции...
Пояснения условия C++
Пожалуйста поясните следующую задачу. (Прошу решения не предлагать, мне нужно самому решить) http://www.cyberforum.ru/attachment.php?attachmentid=87759&stc=1&d=1310459683 Я не понимаю как эта...
C++ Как заполнить вектор в структуре? http://www.cyberforum.ru/cpp-beginners/thread332143.html
как заполнить вектор в структуре?? struct pupil { vector <string> a; } я делал так: pupil f; f.a.push_back("qwerty"); что не правильно, подскажите как надо P.S. Пытался сделать массив строк ...
C++ Двумерный массив в динамической памяти как поле класса Здравствуйте! Вот так можно описать двумерный массив в дин.памяти. class nameClass { public: MapPlaceTp ** roomMap; setArr ( ); }; подробнее

Показать сообщение отдельно
nameless
Эксперт С++
334 / 298 / 14
Регистрация: 16.06.2009
Сообщений: 486
12.07.2011, 18:57
Ulles,

Цитата Сообщение от Ulles Посмотреть сообщение
Всем спасибо!
А как усложнить этот код, добавив это: если программа нашла в тексте "disabled1", выдать в консоль "11", если нашла в тексте "disabled2" - то выдать "22", "disabled3" - то выдать "3", а если ничего из вышеперечисленного - "Error"?
Спасибо.
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 <algorithm>
#include <iterator>
#include <boost/regex.hpp>
 
struct Func
{
    void operator() (std::string str)
    {
        std::string temp = str.substr(str.length() - 1);
        std::cout << temp + temp << std::endl;
    }
};
 
int main()
{
    std::string word("disabled");
    boost::regex reg(word + "[0-9]");
    std::string text("Some text about disabled1. One upon a time disabled2 go for a walk. The end of disabled8...");
    std::string::const_iterator start_it = text.begin();
    std::string::const_iterator end_it = text.end();
    boost::smatch results;
    std::vector <std::string> v_words;
    Func print;
 
    while (boost::regex_search(start_it, end_it, results, reg))
    {
        v_words.push_back(results[0]);
        start_it = results[0].second;
    }
    
    if (!v_words.empty())
        std::for_each(v_words.begin(), v_words.end(), print);
    else
        std::cout << "Error." << std::endl;
 
    return 0;
}
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.