std:: basic_regex
|
定義済みヘッダー
<regex>
|
||
|
template
<
class
CharT,
|
(C++11以降) | |
クラステンプレート
basic_regex
は、正規表現を保持するための一般的なフレームワークを提供します。
一般的な文字型に対するいくつかのtypedefが提供されています:
|
ヘッダーで定義
<regex>
|
|
| 型 | 定義 |
std::regex
|
std :: basic_regex < char > |
std::wregex
|
std :: basic_regex < wchar_t > |
目次 |
メンバー型
| メンバー型 | 定義 |
value_type
|
CharT
|
traits_type
|
Traits
|
string_type
|
Traits::string_type
|
locale_type
|
Traits::locale_type
|
flag_type
|
std::regex_constants::syntax_option_type |
メンバー関数
|
正規表現オブジェクトを構築する
(public member function) |
|
|
正規表現オブジェクトを破棄する
(public member function) |
|
|
内容を代入する
(公開メンバ関数) |
|
|
内容を割り当てる
(公開メンバー関数) |
|
オブザーバー |
|
|
正規表現内のマークされた部分式の数を返す
(公開メンバ関数) |
|
|
構文フラグを返す
(公開メンバー関数) |
|
ロケール |
|
|
ロケール情報を取得
(公開メンバ関数) |
|
|
ロケール情報を設定
(公開メンバ関数) |
|
修飾子 |
|
|
内容を交換する
(公開メンバ関数) |
|
定数 |
|
| 文法オプション | 効果 |
ECMAScript
|
修正ECMAScript正規表現文法 を使用します。 |
basic
|
基本POSIX正規表現文法を使用します( 文法ドキュメント )。 |
extended
|
拡張POSIX正規表現文法を使用します( 文法ドキュメント )。 |
awk
|
POSIXの awk ユーティリティで使用される正規表現文法を使用します( 文法ドキュメント )。 |
grep
|
POSIXの
grep
ユーティリティで使用される正規表現文法を使用します。これは事実上
basic
オプションと同じですが、改行
'
\n
'
が選択肢区切りとして追加されています。
|
egrep
|
POSIXの
grep
ユーティリティで
-E
オプションを使用した場合の正規表現文法を使用します。これは事実上
extended
オプションと同じですが、
'|'
に加えて改行
'
\n
'
も選択肢区切りとして追加されています。
|
| 文法バリエーション | 効果 |
icase
|
文字マッチングは大文字小文字を区別せずに行われます。 |
nosubs
|
マッチング実行時、すべてのマークされた部分式
(
expr
)
は非マーク部分式
(?:
expr
)
として扱われます。提供された
std::regex_match
構造体にはマッチが保存されず、
mark_count()
はゼロになります。
|
optimize
|
正規表現エンジンに対し、構築を遅くする可能性がある代償でマッチングを高速化するよう指示します。例えば、非決定性FSAを決定性FSAに変換することが含まれます。 |
collate
|
"[a-b]" 形式の文字範囲はロケール依存になります。 |
multiline
(C++17)
|
ECMAScriptエンジンが選択されている場合、
^
が行の先頭にマッチし、
$
が行の末尾にマッチすることを指定します。
|
文法オプションは
ECMAScript
、
basic
、
extended
、
awk
、
grep
、
egrep
の中から最大1つを選択できます。文法が指定されない場合、
ECMAScript
が選択されていると見なされます。他のオプションはバリエーションとして機能し、
std
::
regex
(
"meow"
, std
::
regex
::
icase
)
は
std
::
regex
(
"meow"
, std
::
regex
::
ECMAScript
|
std
::
regex
::
icase
)
と等価です。
basic_regex
内のメンバー定数は、
std::regex_constants
名前空間で定義されている
syntax_option_type
定数の複製です。
非メンバー関数
|
(C++11)
|
std::swap
アルゴリズムを特殊化
(関数テンプレート) |