|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
Работа с регулярными выражениями и исключения14.02.2017, 11:50. Показов 3519. Ответов 31
Метки нет (Все метки)
Очень простой вопрос - какую взять библиотеку для работы с регулярными выражениями, удовлетворяющую одному из следующих условий:
1) Напоровшись на некорректное выражение, парсер не плюется исключениями, а возвращает false. 2) Парсер все же кидает исключение, но это исключение гарантированно содержит описание ошибки. Очень желательно, в utf-16. Предупреждая вопрос "нафиг надо" - метод assign стандартного std::regex, плюется исключением с невероятно информативной строчкой "regex_error". Поэтому, мне надо прям на месте это исключение ловить и менять на более информативное. И я как-то не понимаю чем такой дизайн лучше дедовской проверки кодов возврата.
0
|
|
| 14.02.2017, 11:50 | |
|
Ответы с готовыми решениями:
31
Работа с регулярными выражениями (парсинг txt-файла) Как пользоваться регулярными выражениями |
|
Форумчанин
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|||
| 14.02.2017, 16:27 | |||
std::cout << reg с explicit и без него.Это (explicit для операторов преобразований), кстати, добавили лишь в С++11. Добавлено через 1 минуту
0
|
|||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||
| 14.02.2017, 16:29 | ||
|
0
|
||
|
Форумчанин
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 14.02.2017, 16:35 | |
|
0
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||
| 14.02.2017, 16:35 | ||
|
Или там такая логика: если такого оператора не предусмотрено то делается попытка преобразовать в bool? Добавлено через 27 секунд MrGluck, Просто сразу не заметил про "попробовать" <<
0
|
||
|
Форумчанин
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 14.02.2017, 16:36 | |
|
1
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 14.02.2017, 16:39 | |
|
0
|
|
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||
| 14.02.2017, 17:02 [ТС] | ||
|
По-моему, очень веский повод искать библиотеку с более вменяемым дизайном.
0
|
||
|
Форумчанин
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 14.02.2017, 17:10 | |
|
Renji, если буст уже есть то да, но вот таскать с собой такую большую либу в зависимостях ради экономии 20 строчек кода тоже не очень.
0
|
|
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||
| 14.02.2017, 17:52 [ТС] | ||
|
0
|
||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
||||
| 14.02.2017, 18:42 | ||||
|
Вообще оно не очень удобно получится. ![]() Но так-то есть еще https://github.com/google/re2/ - не один файлик, но все же. Там нет исключений (потому что гугл), и оно тоже, как и буст, может показать на место, где произошел фэйл.
1
|
||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 14.02.2017, 18:44 | ||
|
и тогда std::terminate() сделает живительную автаназию всему процессу noexcept нужно пользовать только там, где гарантируется безопасность от исключений.
1
|
||
|
Форумчанин
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|||
| 14.02.2017, 19:09 | |||
|
0
|
|||
| 14.02.2017, 19:09 | |
|
Не получается работать с регулярными выражениями Проверка на наличие подстроки регулярными выражениями
Обработка файов регулярными выражениями. Работа с регулярными выражениями Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов.
Логика кажется понятной:
1. Находим ключевые слова.
2. Добавляем их на. . .
|
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302
Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
|