<regex>

Определяет шаблон класса для анализа регулярных выражений (C++) и нескольких шаблонов классов и функций для поиска текста в объекте регулярного выражения.

Синтаксис

#include <regex>

Замечания

Чтобы создать объект регулярного выражения, используйте класс шаблона basic_regex класса или одну из его специализаций, regex а wregexтакже флаги синтаксиса типа regex_constants::syntax_option_type.

Чтобы найти текст совпадений с объектом регулярного выражения, используйте функции regex_match шаблона и regex_searchвместе с флагами соответствия типа regex_constants::match_flag_type. Эти функции возвращают результаты, используя класс шаблона match_results класса и его специализации, cmatch, wcmatch, smatchи , а wsmatchтакже класс шаблонаsub_matchкласса и его специализации, csub_match, wcsub_matchssub_matchи .wssub_match

Чтобы заменить текст, соответствующий объекту регулярного выражения, используйте функцию regex_replaceшаблона вместе с флагами соответствия типа regex_constants::match_flag_type.

Чтобы выполнить итерацию нескольких совпадений объекта регулярного выражения, используйте шаблоны классов и regex_token_iterator классов или одну из их специализаций, cregex_iterator, , wcregex_iteratorcregex_token_iteratorsregex_token_iteratorwsregex_iteratorwcregex_token_iteratorsregex_iteratorили wsregex_token_iteratorвместе с флагами соответствия типа.regex_constants::match_flag_typeregex_iterator

Чтобы изменить сведения о грамматике регулярных выражений, напишите класс, реализующий характеристики регулярного выражения.

Классы

Класс Description
basic_regex Создание оболочки для регулярного выражения.
match_results Содержит последовательность подстрок соответствия.
regex_constants Содержит различные константы.
regex_error Сообщает о недопустимом регулярном выражении.
regex_iterator Перебирает результаты сопоставления.
regex_traits Описывает характеристики элементов для сопоставления.
regex_traits<char> Описывает характеристики char для сопоставления.
regex_traits<wchar_t> Описывает характеристики wchar_t для сопоставления.
regex_token_iterator Перебирает подстроки соответствия.
sub_match Описывает подстроку соответствия.

Определения типов

Имя Описание
cmatch Определение типа charmatch_results.
cregex_iterator Определение типа charregex_iterator.
cregex_token_iterator Определение типа charregex_token_iterator.
csub_match Определение типа charsub_match.
regex Определение типа charbasic_regex.
smatch Определение типа stringmatch_results.
sregex_iterator Определение типа stringregex_iterator.
sregex_token_iterator Определение типа stringregex_token_iterator.
ssub_match Определение типа stringsub_match.
wcmatch Определение типа wchar_tmatch_results.
wcregex_iterator Определение типа wchar_tregex_iterator.
wcregex_token_iterator Определение типа wchar_tregex_token_iterator.
wcsub_match Определение типа wchar_tsub_match.
wregex Определение типа wchar_tbasic_regex.
wsmatch Определение типа wstringmatch_results.
wsregex_iterator Определение типа wstringregex_iterator.
wsregex_token_iterator Определение типа wstringregex_token_iterator.
wssub_match Определение типа wstringsub_match.

Функции

Function Description
regex_match Точно соответствует регулярному выражению.
regex_replace Заменяет соответствующие регулярные выражения.
regex_search Поиск соответствия регулярному выражению.
swap Меняет местами объекты basic_regex и match_results.

Операторы

Operator Description
operator== Сравнение различных объектов, равенство.
operator!= Сравнение различных объектов, неравенство.
operator< Сравнение различных объектов, меньше.
operator\<= Сравнение различных объектов, меньше или равно.
operator> Сравнение различных объектов, больше.
operator>= Сравнение различных объектов, больше или равно.
operator<< Вставляет sub_match в поток.

См. также

Регулярные выражения (C++)
regex_constants Класса
regex_error Класса
Функции <regex>
regex_iterator Класса
Операторы <regex>
regex_token_iterator Класса
regex_traits Класса
Определения типов <regex>