クイックスタート
チュートリアル
ツール & 言語
リファレンス
書籍レビュー
正規表現リファレンス
はじめに
目次
クイックリファレンス
文字
基本機能
文字クラス
ショートハンド
アンカー
単語境界
量指定子
Unicode
キャプチャグループと後方参照
名前付きグループと後方参照
特殊グループ
モード修飾子
再帰とバランスグループ
置換リファレンス
文字
マッチしたテキストと後方参照
コンテキストと大文字小文字変換
条件
このサイトについて
はじめに
正規表現クイックスタート
正規表現チュートリアル
置換文字列チュートリアル
アプリケーションとプログラミング言語
正規表現の例
正規表現リファレンス
置換文字列リファレンス
書籍レビュー
印刷用PDF
このサイトについて
RSSフィードとブログ
RegexBuddy—Better than a regular expression reference!

正規表現リファレンス: キャプチャグループと後方参照

機能構文説明JGsoft .NET Java Perl PCRE PCRE2 PHP Delphi R JavaScript VBScript XRegExp Python Ruby std::regex Boost Tcl ARE POSIX BRE POSIX ERE GNU BRE GNU ERE Oracle XML XPath
キャプチャグループ (正規表現) 括弧は、その間の正規表現をグループ化します。括弧内の正規表現にマッチしたテキストを、番号付きグループとしてキャプチャし、番号付き後方参照で再利用できます。グループ化された正規表現全体に正規表現演算子を適用できます。 (abc){3}マッチabcabcabc最初のグループは以下にマッチしますabc. はいはいはいはいはいはいはいはいはいはいはいはいはいはいECMA
拡張
egrep
awk
ECMA
拡張
egrep
awk
はいいいえはいいいえはいはいはいはい
キャプチャグループ \(正規表現\) エスケープされた括弧は、その間の正規表現をグループ化します。括弧内の正規表現にマッチしたテキストを、番号付きグループとしてキャプチャし、番号付き後方参照で再利用できます。グループ化された正規表現全体に正規表現演算子を適用できます。 \(abc\){3}マッチabcabcabc最初のグループは以下にマッチしますabc. いいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえ基本
grep
基本
grep
いいえはいいいえはいいいえいいえいいえいいえ
非キャプチャグループ (?:正規表現) 非キャプチャの括弧は、正規表現演算子を適用できるように正規表現をグループ化しますが、何もキャプチャしません。 (?:abc){3}マッチabcabcabcグループはありません。 はいはいはいはいはいはいはいはいはいはいはいはいはいはいECMAECMAはいいいえいいえいいえいいえいいえいいえはい
後方参照 \1から\9 1番目から9番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 (abc|def)=\1マッチabc=abcまたはdef=def、しかしabc=defまたはdef=abc. はいはいはいはいはいはいはいはいはいはいはいはいはいはいECMA
基本
grep
ECMA
基本
grep
はいはいいいえはいはいはいいいえはい
後方参照 \10から\99 10番目から99番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 はいはいはいはいはいはいはいはいはいはいはいはいはいはいECMAいいえはいいいえいいえいいえいいえいいえいいえはい
後方参照 \k<1>から\k<99> 1番目から99番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 (abc|def)=\k<1>マッチabc=abcまたはdef=def、しかしabc=defまたはdef=abc. はいはいいいえいいえいいえいいえいいえいいえいいえいいえいいえはいいいえ1.9いいえECMA
1.47–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
後方参照 \k'1'から\k'99' 1番目から99番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 (abc|def)=\k'1'マッチabc=abcまたはdef=def、しかしabc=defまたはdef=abc. はいはいいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえ1.9いいえECMA
1.47–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
後方参照 \g1から\g99 1番目から99番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 (abc|def)=\g1マッチabc=abcまたはdef=def、しかしabc=defまたはdef=abc. いいえいいえいいえ5.107.0はい5.2.2はいはいいいえいいえいいえいいえいいえいいえECMA
1.42–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
後方参照 \g{1}から\g{99} 1番目から99番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 (abc|def)=\g{1}マッチabc=abcまたはdef=def、しかしabc=defまたはdef=abc. いいえいいえいいえ5.107.0はい5.2.2はいはいいいえいいえいいえいいえいいえいいえECMA
1.42–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
後方参照 \g<1>から\g<99> 1番目から99番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 (abc|def)=\g<1>マッチabc=abcまたはdef=def、しかしabc=defまたはdef=abc. いいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえECMA
1.47–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
後方参照 \g'1'から\g'99' 1番目から99番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 (abc|def)=\g'1'マッチabc=abcまたはdef=def、しかしabc=defまたはdef=abc. いいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえECMA
1.47–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
後方参照 (?P=1)から(?P=99) 1番目から99番目の番号付きキャプチャグループの間でマッチしたテキストに置換されます。 (abc|def)=(?P=1)マッチabc=abcまたはdef=def、しかしabc=defまたはdef=abc. はいいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえ
相対後方参照 \k<-1>, \k<-2>など 後方参照から右から左に、指定された数だけ名前付きまたは番号付きキャプチャグループの開始括弧を数えることによって見つけることができるキャプチャグループによってマッチされたテキストで置換されます。 (a)(b)(c)(d)\k<-3>マッチabcdb. V2いいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえ1.9いいえECMA
1.47–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
相対後方参照 \k'-1', \k'-2'など 後方参照から右から左に、指定された数だけ名前付きまたは番号付きキャプチャグループの開始括弧を数えることによって見つけることができるキャプチャグループによってマッチされたテキストで置換されます。 (a)(b)(c)(d)\k'-3'マッチabcdb. V2いいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえ1.9いいえECMA
1.47–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
相対後方参照 \g-1, \g-2など 後方参照から右から左に、指定された数だけ名前付きまたは番号付きキャプチャグループの開始括弧を数えることによって見つけることができるキャプチャグループによってマッチされたテキストで置換されます。 (a)(b)(c)(d)\g-3マッチabcdb. いいえいいえいいえ5.107.0はい5.2.2はいはいいいえいいえいいえいいえいいえいいえECMA
1.42–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
相対後方参照 \g{-1}, \g{-2}など 後方参照から右から左に、指定された数だけ名前付きまたは番号付きキャプチャグループの開始括弧を数えることによって見つけることができるキャプチャグループによってマッチされたテキストで置換されます。 (a)(b)(c)(d)\g{-3}マッチabcdb. いいえいいえいいえ5.107.0はい5.2.2はいはいいいえいいえいいえいいえいいえいいえECMA
1.42–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
相対後方参照 \g<-1>, \g<-2>など 後方参照から右から左に、指定された数だけ名前付きまたは番号付きキャプチャグループの開始括弧を数えることによって見つけることができるキャプチャグループによってマッチされたテキストで置換されます。 (a)(b)(c)(d)\g<-3>マッチabcdb. いいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえECMA
1.47–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
相対後方参照 \g'-1', \g'-2'など 後方参照から右から左に、指定された数だけ名前付きまたは番号付きキャプチャグループの開始括弧を数えることによって見つけることができるキャプチャグループによってマッチされたテキストで置換されます。 (a)(b)(c)(d)\g'-3'マッチabcdb. いいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえいいえECMA
1.47–1.83
いいえいいえいいえいいえいいえいいえいいえいいえ
失敗した後方参照 任意の番号付き後方参照 マッチの試行に参加しなかったグループへの後方参照は、マッチに失敗します。 (a)?\1マッチaaしかし、マッチに失敗するb. はい非ECMAはいはいはいはいはいはいはい無視される無視される無視されるはいはいECMA
基本
grep
無視される
ECMA
1.47–1.83
はいはい該当なしはいはいはい該当なし無視される
無効な後方参照 任意の番号付き後方参照 まったく存在しないグループへの後方参照は有効ですが、何にもマッチしません。 (a)?\2|bマッチb〜でaab. エラーエラーはいエラーエラーエラーエラーエラーエラーエラーエラーエラーエラー1.8のみECMA
基本
grep
エラー
ECMA
基本
grep
エラー
エラーエラー該当なしエラーエラーエラー該当なしエラー
ネストされた後方参照 任意の番号付き後方参照 後方参照は、参照するグループ内で使用できます。 (a\1?){3}マッチaaaaaa. はいはいはいはいはいはいはいはいはい無視されるはい無視されるエラー失敗ECMA
基本
grep
エラー
ECMA
1.78–1.83 失敗
エラーエラー該当なしエラーエラーエラー該当なしエラー
前方参照 任意の番号付き後方参照 後方参照は、参照するグループの前で使用できます。 (\2?(a)){3}マッチaaaaaa. はい非ECMAはいはいはいはいはいはいはい無視されるエラーエラーエラーはいECMA
基本
grep
エラー
ECMA
1.78–1.83
エラーエラー該当なしエラーエラーエラー該当なしエラー
機能構文説明JGsoft .NET Java Perl PCRE PCRE2 PHP Delphi R JavaScript VBScript XRegExp Python Ruby std::regex Boost Tcl ARE POSIX BRE POSIX ERE GNU BRE GNU ERE Oracle XML XPath