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

Удалить из предложения слова с комбинацией символов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сформировать словесную запись числа http://www.cyberforum.ru/cpp-beginners/thread933006.html
Помогите с функцией! Условие: допускается использование любых видов функций. Разработать функцию, которая формирует string, что является словесной записью (числительным) заданного двузначного числа. Сгенерировать последовательность из 14-и случайных двузначных чисел. Используя разработанную функцию, напечатать таблицу значений этих чисел и их словесных записей.
C++ Удаление из вектора нескольких объектов Собственно как удалить несколько объектов из вектора, имея индексы/итераторы, ведь при удалении первого объекта придется пройтись по всем индексам и отнять 1, а затем потоврить снова и снова, и снова/все остальные итераторы перестанут быть действительными http://www.cyberforum.ru/cpp-beginners/thread933004.html
C++ Определить первое слово с указанной буквой
Помогите написать функцию, пожалуйста! Условие: допускается использование любых видов функций. Разработать функцию, которая определяет в заданной символьной строке первое слово, содержащее указанную букву и возвращает указатель на конец этого слова. Используя разработанную функцию, выделить и напечатать все слова из введенного предложения, в которых встречается заданная буква, или вывести...
Поиск и открытие файла! C++
Нужно собственно произвести поиск на Hdd файла, по имени с последующим запуском этого файла К примеру есть плеер, нужно чтобы он запросил имя файла, произвёл поиск, если такое есть запустил...
C++ Определить дату по порядковому номеру дня года http://www.cyberforum.ru/cpp-beginners/thread932988.html
Братцы, помогите написать 5 функций, пожалуйста! Условие: допускается использование любых видов функций. 1) Разработать функцию, которая для заданного порядковым номером дня года определяет соответствующую дату: <День> <Месяц> (известно, что год невисокосный). Сгенерировать 5 случайных чисел, задающих номера дней года. Используя разработанную функцию, напечатать даты, соответствующие...
C++ Учусь умножать Здравствуйте, дорогие обитатели CyberForum :) Есть небольшая просьба, прошу подтолкнуть меня к правильному решению задачи. Изначально мне нужно было написать программу, которая считывает с клавиатуры имя и возраст, и потом их выводит на экран, но после выполнения этого задания возникло новое, тяжело дающееся мне задание: Нужно вводить возраст в годах и выводить его в месяцах. Нужного... подробнее

Показать сообщение отдельно
Kaskera
0 / 0 / 0
Регистрация: 27.07.2013
Сообщений: 34
06.08.2013, 12:00  [ТС]     Удалить из предложения слова с комбинацией символов
Цитата Сообщение от Kordn Посмотреть сообщение
Такой вариант пойдет?
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
#include "stdafx.h"
 
#include <iostream>
#include <string>
 
using namespace std;
 
int main(){
   string s,str,x;
   cout<<"Enter the sentence: ";
   getline(cin, s);
      cout<<"Enter the letter's combination: ";
   getline(cin, str);
  size_t i=0;
   while (i<s.length())
   {
   if ((s[i]==' ') || (i+1==s.length())) {
   string ex=s.substr(0,i+1);
   if (ex.find(str)==string::npos) x+=ex;
   s.erase(0,i+1);
   i=0;
   }
   else i++;
   }
   cout<<x<<endl;
   system("pause");
    return 0;
}
Думаю, да, спасибо большое!

Добавлено через 6 минут
Цитата Сообщение от ninja2 Посмотреть сообщение
От моё элегантное решение:
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
43
44
#include <iostream>
using std::cout;
using std::endl;
#include <string>
using std::string;
#include <regex>
using std::regex;
using std::regex_search;
using std::smatch;
using std::regex_replace;
 
string f1(const string& str,string s)
{
    string s1="([^ ]*)"; s1+=s; s+="([^ ]*)";
    return regex_replace(str,regex(s1),string(""));
}
 
string f2(string str,string s)
{
    string s1="([^ ]*)"; s1+=s; s+="([^ ]*)";
    smatch sm;
    string rez="";
    while(regex_search(str, sm,regex(s1)))
    {
        rez+=sm[0];
        rez+=' ';
        str=sm.suffix();
    }
    return rez;
}
 
int main()
{
    string str="hellow bee da eesebta deeda";
    cout <<"str= "<<str<<endl;
 
    string ydalit6=f1(str,"da");
    string iz69t6 = f2(str,"da");
 
    cout <<"ydalit6= "<<ydalit6<<endl;
    cout <<"iz69t6= "<<iz69t6<<endl;
 
    return 0;
}
Спасибо за помощь!
Но у меня VS 2008, вылетает build failed и fatal error C1083: Cannot open include file: 'regex': No such file or directory. Не скажете, как с этим бороться? Вот здесь http://social.msdn.microsoft.com/For...ude-file-regex пишут, что библиотека должна бы подключаться, но как решить проблему я так и не пойму.
 
Текущее время: 09:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru