命名空间
变体
操作

std::regex_traits<CharT>::transform

来自 cppreference.com
< cpp‎ | regex‎ | regex traits
template< class ForwardIt >
string_type transform( ForwardIt first, ForwardIt last) const;

获取字符序列[firstlast)的排序键,以便如果一个排序键小于另一个排序键(使用operator<比较),那么产生第一个排序键的字符序列在当前注入的区域设置的排序顺序中排在产生第二个排序键的字符序列之前。

例如,当正则表达式标志std::regex_constants::collate被设置时,序列[a-b]将匹配某个字符c1,如果traits.transform("a") <= traits.transform(c1) <= traits.transform("b")。注意,此函数以字符序列作为参数,以适应像[[.ae.]-d]这样定义的范围。

标准库对std::regex_traits的专门化返回std::use_facet<std::collate<CharT>>(getloc()).transform(str.data(), str.data() + str.length()),其中str是一个临时字符串,构造方式为string_type str(first, last)

[编辑] 参数

first, last - 一对LegacyForwardIterators,它们确定要比较的字符序列
类型要求
-
ForwardIt必须满足LegacyForwardIterator的要求。

[编辑] 返回值

字符序列[firstlast)在当前注入的区域设置中的排序键。

[编辑] 示例