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

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

Войти
Регистрация
Восстановить пароль
 
ANSII
0 / 0 / 0
Регистрация: 01.02.2013
Сообщений: 18
#1

Деление строки на части по знаку препинания - C++

17.05.2013, 14:34. Просмотров 582. Ответов 1
Метки нет (Все метки)

Есть строка, состоящая из нескольких слов.
C++
1
string ss = "Автор Название стоимость жанр";
При помощи этого кода она делится на слова:
C++
1
2
3
istringstream iss(ss);
while (iss >> ss) 
   cout << ss << endl;
можно ли таким же или похожим образом разделить стоку на слова не по пробелам, а по знакам препинания ';'
C++
1
string ss = "Автор;Название;стоимость;жанр";
а если еще расскажете как это работает, будет вообще замечательно.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2013, 14:34     Деление строки на части по знаку препинания
Посмотрите здесь:

Деление числа на части C++ - C++
Есть код: #include &lt;iostream&gt; #include &quot;math.h&quot; #include &lt;sstream&gt; #include &lt;fstream&gt; #include &lt;iomanip&gt; using namespace...

Деление перменных с отображением дробной части - C++
Здравствуйте!Скажите пожалуйста, как поделить переменные, чтобы отобразилась дробная часть? То есть, что-то типа такого: int M,N; ...

Деление без откидывания дробной части - C++
привет обитателям форума. у меня вот такая вот проблемка, задание простое но поделить не могу никак. ***** Задан массив из 10...

деление множество точек на две равные части - C++
Есть у меня множество точек и окружность с произвольным радиусом. Мне нужно найти такие две точки, лежащие в окружности, через которые...

Упорядочить строки в массиве по знаку зодиака - C++
Такая программа: #include &lt;iostream.h&gt; class ZNAK { public: char familiya; char imya; char zodiak; int dniuha; ...

Заменить все элементы k-й строки и s-го столбцаматрицы на противоположные по знаку - C++
заменить все элементы k-й строки и s-го столбца двумерного массива на противоположные по знаки(элемент,стоящий на пересечение,не изменять)

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DiffEreD
1429 / 766 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
18.05.2013, 12:33     Деление строки на части по знаку препинания #2
С boost легко:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <string>
#include <vector>
#include <windows.h>
#include <boost/algorithm/string.hpp>
 
int main()
{
    SetConsoleCP (1251); SetConsoleOutputCP (1251);
    
    std::string ss = "Автор;Название  ;  стоимость;   жанр";
    std::vector<std::string> words;
    boost::split(words, ss, boost::is_any_of(";,! "), boost::token_compress_on);
    for (const auto& i : words) std::cout<<i<<'\n';
    
    std::cout<<std::endl;
    return 0;
}
А так, пишите свою реализацию функции split (поищите на форуме, должны были писать).
Ответ Создать тему
Опции темы

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