Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
1195 / 822 / 180
Регистрация: 16.03.2008
Сообщений: 3,950
Записей в блоге: 1
1

Обработка файов регулярными выражениями.

03.08.2011, 16:53. Просмотров 791. Ответов 6
Метки нет (Все метки)

Задайте верное направление.

Исходная задача. Необходимо обработать текстовый файл "умным образом". Где то достаточно просто замены "А" на "Б"; где то необходимы регулярные выражения (например, дату из формата dd.mm.YYYY в YYYY-mm-dd) и т.п. Соответственно полгаю использовать регулярные выражения и boost.
Думаю хранить пары "рег.выражение"/"на что заменять" хранить в текстовом файле, затем загружать в массив. Далее считывать построчно исходный файл, для каждой строки проверять каждую пару при помощи boost::replace. Утилиту хочется уже сейчас.

Однако с boost я ни разу не работал. Сейчас поглядел там много чего есть, быстро все не разглядеть. Нет ли там более подходящего для решения моей задачи?

Добавлено через 2 часа 47 минут
как ни странно ответ нашел в документации. И даже код подходит в качестве заготовки
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.08.2011, 16:53
Ответы с готовыми решениями:

Работа с регулярными выражениями С++
Опишите функцию анализа номера, обработайте ошибку указания номера у недопустимом формате...

Не получается работать с регулярными выражениями
Добрый день, коллеги! Обращаюсь с вопросом, потому что новичок. Мне необходимо, используя...

Как пользоваться регулярными выражениями
Имеется текстовый файл с подобным содержанием: ////////////////////////////// Файл 12/1.19...

Работа с регулярными выражениями и исключения
Очень простой вопрос - какую взять библиотеку для работы с регулярными выражениями, удовлетворяющую...

6
Эксперт С++
7171 / 3229 / 77
Регистрация: 17.06.2009
Сообщений: 14,166
03.08.2011, 18:13 2
Проще и быстрее такое делается на perl
1
1195 / 822 / 180
Регистрация: 16.03.2008
Сообщений: 3,950
Записей в блоге: 1
03.08.2011, 18:21  [ТС] 3
"Проще и быстрее" это делается с использованием плагина (регулярка) к FAR под виндой и sedом в линуксе...... Тем не менее не для всех это "удобнее и быстрее". Есть ли смысл стваить перл ради утилиты такого уровня?
0
20 / 20 / 4
Регистрация: 06.10.2011
Сообщений: 53
13.10.2011, 18:11 4
Цитата Сообщение от voral Посмотреть сообщение
Есть ли смысл стваить перл ради утилиты такого уровня?
На винду установить ActivePerl - пятиминутное дело, а на линуксе он обычно уже есть
0
1195 / 822 / 180
Регистрация: 16.03.2008
Сообщений: 3,950
Записей в блоге: 1
13.10.2011, 18:26  [ТС] 5
В общем то задача решена. Естественно это не перл. (обяснять пользователю, что ему еще что то нужно установить дело не благодарное). Гораздо легче отправить бинарник и конфиг.

Сделал как и планировал C++ + boost
0
Эксперт С++
7171 / 3229 / 77
Регистрация: 17.06.2009
Сообщений: 14,166
14.10.2011, 09:53 6
Из perl тоже можно сделать бинарик
0
1195 / 822 / 180
Регистрация: 16.03.2008
Сообщений: 3,950
Записей в блоге: 1
14.10.2011, 14:50  [ТС] 7
Хм. Интересно. Не знал. Надо будет порешать для себя вопрос php vs perl. Хотя, для меня, си все равно лучше
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.10.2011, 14:50

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Проверка на наличие подстроки регулярными выражениями
Здравствуйте. С помощью регулярных выражений я пытаюсь проверить наличие подстроки. Для этого пишу...

Access Violation при работе с регулярными выражениями
иногда когда строку надо обработать регулярным выражением, то в начале процесса выкачивает ошибка,...

Работа с регулярными выражениями (парсинг txt-файла)
подскажите пожалуйста. хочу сделать парсер по файлу тхт написал вот такой код с регулярными...

Выбрать различные цифры из однотипных строк регулярными выражениями
есть много таких строк: <AddOrder price="100.20" orderId="199" operation="BUY" /> <DeleteOrder...

Как работать с регулярными выражениями с модулем RegExpr.pas
Подключил в проект модуль RegExpr.pas, потому что все попытки подключить boost провалились (винда...

Проверка формата ввода аргументов командной строки регулярными выражениями
Часто при запуске программы на вход подаются дополнительные данные в определённом формате (взять...


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

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

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