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

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

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

Вывод в файл после regex - C++

19.05.2013, 11:33. Просмотров 253. Ответов 2
Метки нет (Все метки)

Нашёл код программы, которая отлично парсит по шаблону
Хочу вывести в текстовый файл результат работы после regex. Если бы ответ был вида char* то было бы просто, но тут какой-то странный формат. Так вот как бы мне превратить ответ в char* ну или записать в файл как-то по-другому?

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
#include <regex>
#include <iostream>
#include <fstream>
#include <string>
 
using namespace std;
 
int main()
{
    std::string filepath = "input_file.txt"; // the file you provided
    std::ifstream ifs(filepath.c_str(), std::ios_base::in | std::ios_base::binary);
 
    ifs.seekg(0, std::ios_base::end);
    size_t length = static_cast<size_t>(ifs.tellg());
    ifs.seekg(0, std::ios_base::beg);
 
    std::string text;
    text.resize(length);
 
    ifs.read(&text[0], length);
    ifs.close();
 
    std::string pattern("12345");
    std::regex r(pattern, regex::icase);
    for (std::sregex_iterator it(text.begin(), text.end(), r), end_it; it != end_it; ++it)
    {
        std::cout << it->str() << std::endl;
    }
 
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2013, 11:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывод в файл после regex (C++):

Не удается открыть файл include: regex: No such file or directory - C++
При попытке подключить #include &lt;regex&gt;, выдает такую ошибку - fatal error C1083: Не удается открыть файл include: regex: No such file or...

Текстовый файл, в котором значения разделены точкой с запятой. Нужен ли regex? - C++
Привет) В общем, вопрос в том, как сделать правильнее и &quot;красивее&quot;, что ли, такое вот задание. Есть файлик, в котором заданное...

std::regex и boost::regex - C++
Что-то я не пойму что реализация их различна ? #include &lt;iostream&gt; #include &lt;string&gt; //#include &lt;regex&gt; //using namespace...

Вывод суммы в файл (файловый ввод/вывод) - C++
Добрый день! Я пытался написать программу, которая должна вводить данные из файла №1, потом вычислять их сумму и полученное значение...

Открыть файл, прочитать. Все, что находится после двоеточия перенести в другой файл - C++
Работа с текстовыми файлами Друзья, подскажите, имеется файлик *.txt в нем в строчку набор символов (разной длины), часть символов...

Файл: Форматированный вывод текста в файл - C++
#include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;io.h&gt; int main() { double x1, x2, y1, y2, l,si,co; int ku, kuz, kuf, kel; ...

2
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
19.05.2013, 11:46 #2
C++
1
2
3
4
5
6
7
8
int main() {
   std::ofstream ofs("output_file.txt");
   // ...
   for (/* ... */) {
      ofs << it->str() << std::endl;
   }
   // ...
}
Добавлено через 52 секунды
Цитата Сообщение от dex123 Посмотреть сообщение
какой-то странный формат
str() возвращает std::string.
1
dex123
0 / 0 / 0
Регистрация: 05.04.2013
Сообщений: 53
19.05.2013, 11:52  [ТС] #3
Спасибо, все работает
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2013, 11:52
Привет! Вот еще темы с ответами:

Вывод n знаков после запятой - C++
Как это сделать?

Вывод структуры после сортировки - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; #include &lt;string.h&gt; #include &lt;windows.h&gt; using namespace std; const...

Вывод массива после сортировки - C++
У меня не работает правельно вывод массива после сортировки, он такой же как и вводил, помогите. #include &lt;iostream.h&gt; #include ...

Добавить вывод перед и после main() - C++
Задание из книги Старуструпа: Дана программа: #include &lt;iostream&gt; int main () { std: :cout&lt;&lt;&quot;Hello, world\n&quot;; } ...


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

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

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