std::regex_constants::match_flag_type
| ヘッダ <regex> で定義 |
||
| using match_flag_type = /* 実装定義 */; |
(1) | (C++11以降) |
| constexpr match_flag_type match_default = {}; constexpr match_flag_type match_not_bol = /* 未規定 */; |
(2) | (C++11以降) (C++17以降インライン化) |
[編集] 定数
注: [first, last) は、マッチング対象の文字シーケンスを指します。
| 名前 | 説明 |
match_not_bol
|
[first, last) の最初の文字は、行頭では**ない**かのように扱われます。(つまり、 ^は [first, first) とはマッチしません)。 |
match_not_eol
|
[first, last) の最後の文字は、行末では**ない**かのように扱われます。(つまり、 $は [last, last) とはマッチしません)。 |
match_not_bow
|
\bは [first, first) とはマッチしません。 |
match_not_eow
|
\bは [last, last) とはマッチしません。 |
match_any
|
複数のマッチが可能な場合、任意のマッチ結果で許容されます。 |
match_not_null
|
空のシーケンスをマッチしません。 |
match_continuous
|
firstで始まる部分シーケンスのみをマッチします。 |
match_prev_avail
|
--firstが有効なイテレータ位置です。設定されている場合、 match_not_bolとmatch_not_bowは無視されます。 |
format_default
|
std::regex_replaceで文字列を構築する際にECMAScriptルールを使用します(構文ドキュメント)。 |
format_sed
|
std::regex_replaceでPOSIX sedユーティリティルールを使用します(構文ドキュメント)。 |
format_no_copy
|
std::regex_replaceで、マッチしなかった文字列を出力にコピーしません。 |
format_first_only
|
std::regex_replaceで、最初の一致のみを置換します。 |
match_defaultとformat_defaultを除くすべての定数はビットマスク要素です。match_defaultとformat_default定数は空のビットマスクです。
[編集] 不具合報告
以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。
| DR | 適用対象 | 公開された動作 | 正しい動作 |
|---|---|---|---|
| LWG 2053 | C++11 | 1. 定数がstaticで宣言されていました。2. match_defaultとformat_defaultが0から初期化されていました。 |
1. static指定子が削除されました。2. {}から初期化されました。 |
[編集] 関連項目
| (C++11) |
正規表現を文字シーケンス全体にマッチさせようと試みる (関数テンプレート) |
| (C++11) |
正規表現の振る舞いを制御する一般的なオプション (typedef) |
| (C++11) |
さまざまな種類のエラーを記述する (typedef) |