std::sub_match
提供: cppreference.com
<tbody>
</tbody>
| ヘッダ <regex> で定義
|
||
template< class BidirIt > class sub_match; |
(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) |
正規表現の部分マッチをイテレートします (クラステンプレート) |