C++ 参考手册
- C++11
- C++14
- C++17
- C++20
- C++ 编译器支持情况表
- 独立与宿主实现
- C++ 语言
- C++ 关键词
- 预处理器
- C++ 标准库头文件
- 具名要求
- 功能特性测试 (C++20)
- 工具库
- 类型支持(基本类型、RTTI、类型特性)
- 概念库 (C++20)
- 错误处理
- 动态内存管理
- 日期和时间工具
- 字符串库
- 容器库
- 迭代器库
- 范围库 (C++20)
- 算法库
- 数值库
- 输入/输出库
- 文件系统库
- 本地化库
- 正则表达式库
- std::sub_match
- std::match_results
- std::basic_regex
- std::regex_search
- std::regex_replace
- std::regex_iterator
- std::regex_match
- std::regex_token_iterator
- std::regex_error
- std::regex_traits
- std::regex_constants::syntax_option_type
- std::regex_constants::match_flag_type
- std::regex_constants::error_type
- 改 ECMAScript 正则表达式文法
- 注释
- 原子操作库
- 线程支持库
- 实验性 C++ 特性
- 有用的资源
- 索引
- std 符号索引
- 协程支持 (C++20)
- C++ 关键词
std::regex_traits
定义于头文件 <regex>
|
||
template< class CharT > class regex_traits; |
(C++11 起) | |
类型特性模板 regex_traits
将类型集合及在类型 CharT
上的操作所需的函数提供给 std::basic_regex 。
因为大多数 regex 操作是对本地环境敏感的(设置 std::regex_constants::collate 标志时),从而 regex_traits 类典型地保有一个作为私有成员的 std::locale 实例。
标准特化
标准库定义 std::regex_traits
的二个特化:
std::regex_traits<char>
| |
std::regex_traits<wchar_t>
|
这些特化使得 std::basic_regex<char> (别名 std::regex )和 std::basic_regex<wchar_t> (别名 std::wregex )可用。为将 std::basic_regex 用于其他字符类型(例如 char32_t ),必须使用用户提供的特性类。
成员类型
类型 | 定义 |
char_type
|
CharT
|
string_type
|
std::basic_string<CharT> |
locale_type
|
用于正则表达式中本地化行为的本地环境。必须为可复制构造 (CopyConstructible) |
char_class_type
|
表示字符分类,并足以保有 lookup_classname 所返回的实现指定集合。必须是位掩码类型 (BitmaskType) 。
|
成员函数
构造 regex_traits 对象 (公开成员函数) | |
[静态] |
计算空终止字符串的长度 (公开静态成员函数) |
确定字符的等价关键 (公开成员函数) | |
决定字符的无关大小写的等价关键 (公开成员函数) | |
确定给定字符串的搜索关键,用于提供对照顺序 (公开成员函数) | |
确定字符序列的初等搜索关键,用于确定等价类 (公开成员函数) | |
以名获得对照元素 (公开成员函数) | |
以名获得字符类 (公开成员函数) | |
指示本地化字符类的从属关系 (公开成员函数) | |
把代表数位的序列翻译成整数值 (公开成员函数) | |
设置本地环境 (公开成员函数) | |
获得本地环境 (公开成员函数) |