C++ regex 头
-
定义
regex 正则表达式是表达要与字符序列匹配的模式的标准化方法。标准C ++库通过<regex>标头中的正则表达式提供一系列操支持。所有这些操作都使用一些典型的正则表达式参数:- 目标序列(主题): 为模式搜索的字符序列。通常,这是两个迭代器指定的范围,但是某些函数也接受c字符串或字符串对象。
- 正则表达式(模式):在目标序列中搜索的模式。该对象必须是basic_regex类型的对象(例如regex),通常是由具有特殊语法的字符串构成的,该特殊语法描述了构成匹配项的内容(请参阅ECMAScript语法)。
- 匹配数组: 某些操作允许检索有关匹配的信息。此信息存储在特殊的match_results数组类型之一中(例如cmatch或smatch)。
- 替换字符串: 某些操作可以替换匹配项。这些替换用允许使用特殊格式的字符串指定(请参阅ECMAScript语法)。
-
正则表达式操作
使用函数或特殊的迭代器适配器执行正则表达式操作:函数函数/类/模板 描述 regex_match 匹配顺序(函数模板) regex_search 搜索顺序(函数模板) regex_replace 替换匹配的序列(函数模板) 迭代类型函数/类/模板 描述 regex_iterator 正则表达式迭代器(类模板) regex_token_iterator 正则表达式令牌迭代器(类模板) -
类
regex函数和迭代器大量使用了一组支持类型作为参数和返回值:基本类型函数/类/模板 描述 basic_regex 正则表达式(类模板) match_results 匹配结果(类模板) sub_match 子表达式匹配(类模板) regex_traits 正则表达式特征(类模板) regex_error 正则表达式异常(类) 其中一些类型是模板,并且具有最常见的实例化别名:basic_regex 实例函数/类/模板 描述 regex 正则表达式(类) wregex wchar_t的正则表达式(类) match_results 实例函数/类/模板 描述 cmatch 字符串文字的match_results (类) wcmatch match_results用于宽字符串文字(类) smatch 字符串对象的match_results (类) wsmatch 宽字符串对象的match_results (类) sub_match 实例函数/类/模板 描述 csub_match 字符串文字的sub_match(类) wcsub_match sub_match用于宽字符串文字(类) ssub_match 字符串的sub_match(类) wssub_match 宽字符串的sub_match(类) -
命名空间
此标头还定义了一个命名空间regex_constants,库将使用的所有常量值都位于该名称空间下:命名空间 描述 regex_constants 正则常量(命名空间) -
语法
正则表达式遵循非常严格的语法。 默认情况下,该库中的函数使用ECMAScript语法:语法 描述 ECMAScript 语法 ECMAScript正则表达式模式语法(语法规范) -
其他函数
正则表达式遵循非常严格的语法。 默认情况下,该库中的函数使用ECMAScript语法:函数 描述 begin 迭代器开始(函数模板) end 结束的迭代器(函数模板)