std::sub_match
提供: cppreference.com
ヘッダ <regex> で定義
|
||
template< class BidirIt |
(C++11以上) | |
クラステンプレート sub_match
はマーク付き部分表現がマッチした文字シーケンスを示すために正規表現エンジンによって使用されます。 マッチは、正規表現がマッチしたターゲットの範囲内の [begin, end)
のペアですが、コードの明瞭性を向上するための追加の観察関数を持ちます。
デフォルトコンストラクタのみがパブリックにアクセス可能です。 sub_match
のインスタンスは、通常、正規表現アルゴリズムの処理中に構築され、 std::match_results コンテナの一部として保持されます。
matched メンバが true
でなければ、メンバ関数は定義済みのデフォルト値を返します。
sub_match
は std::pair<BidirIt, BidirIt> から継承していますが、 swap のようなメンバ関数や代入は期待通りに動作しないため、 std::pair として扱うことはできません。
目次 |
[編集] 型要件
-BidirIt は LegacyBidirectionalIterator の要件を満たさなければなりません。
|
[編集] 特殊化
一般的な文字型に対していくつかの特殊化が提供されます。
ヘッダ
<regex> で定義 | |
型 | 定義 |
csub_match
|
sub_match<const char*> |
wcsub_match
|
sub_match<const wchar_t*> |
ssub_match
|
sub_match<std::string::const_iterator> |
wssub_match
|
sub_match<std::wstring::const_iterator> |
[編集] メンバ型
メンバ型 | 定義 |
iterator
|
BidirIt |
value_type
|
std::iterator_traits<BidirIt>::value_type |
difference_type
|
std::iterator_traits<BidirIt>::difference_type |
string_type
|
std::basic_string<value_type> |
[編集] メンバオブジェクト
bool matched |
このマッチが成功したことを表します (パブリックメンバオブジェクト) |
std::pair から継承
BidirIt first |
マッチシーケンスの先頭 (パブリックメンバオブジェクト) |
BidirIt second |
マッチシーケンスの終端 (パブリックメンバオブジェクト) |
[編集] メンバ関数
マッチオブジェクトを構築します (パブリックメンバ関数) | |
観察 | |
(もしあれば) マッチの長さを返します (パブリックメンバ関数) | |
ベースとなる文字列型に変換します (パブリックメンバ関数) | |
(もしあれば) マッチした部分シーケンスを比較します (パブリックメンバ関数) |
[編集] 非メンバ関数
(C++20で削除)(C++20で削除)(C++20で削除)(C++20で削除)(C++20で削除)(C++20) |
sub_match を別の sub_match 、文字列、または文字と比較します (関数テンプレート) |
マッチした部分文字シーケンスを出力します (関数テンプレート) |
[編集] 関連項目
(C++11) |
正規表現の部分マッチをイテレートします (クラステンプレート) |