名前空間
変種
操作

std::regex_traits::transform

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

あるソートキーが別のソートキーより operator< で比較して小さい場合に、前者のソートキーを生成した文字シーケンスが後者のソートキーを生成した文字シーケンスよりも現在設定されているロケールの照合順序において前に来るような、文字シーケンス [first, last) に対するソートキーを取得します。

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

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

[編集] 引数

first, last - 比較する文字シーケンスを表す一組の ForwardIterator
型の要件
-
ForwardItForwardIterator の要件を満たさなければなりません。

[編集] 戻り値

現在設定されているロケールにおける、文字シーケンス [first, last) に対する照合キー。

[編集]