std::regex_error
Материал из cppreference.com
Определено в заголовочном файле <regex>
|
||
class regex_error; |
(начиная с C++11) | |
Определяет тип объекта исключения, бросаемого для сообщения об ошибках в библиотеке регулярных выражений.
Диаграмма наследования
Содержание |
[править] Функции-элементы
создаёт объект regex_error (public функция-элемент) | |
заменяет объект regex_error (public функция-элемент) | |
получает std::regex_constants::error_type для regex_error (public функция-элемент) |
Унаследован от std::runtime_error
Унаследован от std::exception
Функции-элементы
[virtual] |
уничтожает объект исключения (virtual public of std::exception функция-элемент)
|
[virtual] |
возвращает поясняющую строку (virtual public of std::exception функция-элемент)
|
[править] Пример
Запустить этот код
#include <iostream> #include <regex> int main() { try { std::regex re("[a-b][a"); } catch (const std::regex_error& e) { std::cout << "Пойман regex_error: " << e.what() << '\n'; if (e.code() == std::regex_constants::error_brack) std::cout << "Код равен error_brack\n"; } }
Возможный вывод:
Пойман regex_error: The expression contained mismatched [ and ]. Код равен error_brack