名前空間
変種
操作

std::regex_traits<CharT>::transform

From cppreference.com
< cpp‎ | regex‎ | regex traits
 
 
 
正規表現ライブラリ
クラス
(C++11)
アルゴリズム
イテレータ
例外
Traits
定数
(C++11)
正規表現文法
 
 
template< class ForwardIt >
string_type transform( ForwardIt first, ForwardIt last) const;

現在のロケールで設定されている照合順序において、ソートキーが別のソートキーよりも小さい (operator<で比較) 場合、最初のソートキーが生成した文字シーケンスが2番目のソートキーが生成した文字シーケンスよりも前に来るように、文字シーケンス [firstlast) のソートキーを取得します。

例えば、正規表現フラグ std::regex_constants::collate が設定されている場合、シーケンス [a-b] は、traits.transform("a") <= traits.transform(c1) <= traits.transform("b") の場合、文字 c1 にマッチします。この関数が引数として文字シーケンスを受け取るのは、[[.ae.]-d] のように定義された範囲に対応するためです。

std::regex_traits の標準ライブラリによる特殊化では、string_type str(first, last) として構築された一時的な文字列 str に対して、std::use_facet<std::collate<CharT>>(getloc()).transform(str.data(), str.data() + str.length()) を返します。

[編集] パラメータ

first, last - 比較対象の文字シーケンスを決定する LegacyForwardIterators のペア
型要件
-
ForwardItLegacyForwardIterator の要件を満たさなければなりません。

[編集] 戻り値

現在のロケールにおける、文字シーケンス [firstlast) の照合キー。

[編集]

English 日本語 中文(简体) 中文(繁體)