クイックスタート
チュートリアル
ツール&言語
リファレンス
書評
正規表現リファレンス
はじめに
目次
クイックリファレンス
文字
基本機能
文字クラス
短縮記法
アンカー
単語境界
繰り返し子
Unicode
キャプチャグループとバックリファレンス
名前付きグループとバックリファレンス
特殊なグループ
モード修飾子
再帰とバランスグループ
置換リファレンス
文字
一致したテキストとバックリファレンス
コンテキストと大文字小文字変換
条件式
このサイトについて
はじめに
正規表現クイックスタート
正規表現チュートリアル
置換文字列チュートリアル
アプリケーションと言語
正規表現の例
正規表現リファレンス
置換文字列リファレンス
書評
印刷可能なPDF
このサイトについて
RSSフィードとブログ
RegexBuddy—Better than a regular expression reference!

正規表現クイックリファレンス

このクイックリファレンスは、完全なリファレンステーブルにリストされているすべての正規表現構文の要約であり、説明はありません。他の人が正規表現で使用している構文を見て、その構文がどの機能用なのかわからない場合に、このテーブルを使用できます。チュートリアルで構文の詳細を学ぶには、リンクに従ってください。完全なリファレンステーブルはさまざまな正規表現フレーバーを網羅しているため、このクイックリファレンスには、異なる正規表現フレーバーが異なる機能に同じ構文を使用している場合、同じ構文に複数のエントリが含まれている場合があります。

必要な機能はすでに知っているが、使用する構文を忘れた場合は、代わりに正規表現リファレンスの目次で機能を検索してください。

構文機能
〜以外の任意の文字[\^$.|?*+()リテラル文字
\のいずれかに続く[\^$.|?*+(){}バックスラッシュはメタ文字をエスケープします
.任意の文字
|選択
\|選択
?貪欲量子化子
\?貪欲量子化子
??非貪欲量子化子
?+強欲量子化子
*貪欲量子化子
*?非貪欲量子化子
*+強欲量子化子
+貪欲量子化子
\+貪欲量子化子
+?非貪欲量子化子
++強欲量子化子
{}リテラルの中括弧
{n}ここでnは整数≧1固定量子化子
{n,m}ここでn≧0かつm≧n貪欲量子化子
{n,}ここでn≧0貪欲量子化子
{,m}ここでm≧1貪欲量子化子
\{n\}ここでnは整数≧1固定量子化子
\{n,m\}ここでn≧0かつm≧n貪欲量子化子
\{n,\}ここでn≧0貪欲量子化子
\{,m\}ここでm≧1貪欲量子化子
{n,m}?ここでn≧0かつm≧n非貪欲量子化子
{n,}?ここでn≧0非貪欲量子化子
{,m}?ここでm≧1非貪欲量子化子
{n,m}+ここでn≧0かつm≧n強欲量子化子
{n,}+ここでn≧0強欲量子化子
^文字列アンカー
^行アンカー
$文字列アンカー
$行アンカー
\a文字エスケープ
\A文字列アンカー
\A試行アンカー
\b単語境界
\bバックスペース文字
\B単語非境界
\Bバックスラッシュ文字
\cXML短縮記法
\ca\cz制御文字エスケープ
\cA\cZ制御文字エスケープ
\CXML短縮記法
\d数字の短縮記法
\D数字以外の短縮記法
\eエスケープ文字
\f改ページ文字
\g{name}名前付きバックリファレンス
\g-1, \g-2など相対バックリファレンス
\g{-1}, \g{-2}など相対バックリファレンス
\g1\g99バックリファレンス
\g{1}\g{99}バックリファレンス
\g<name>ここで「name」はキャプチャグループの名前です名前付きサブルーチンの呼び出し
\g<name>ここで「name」はキャプチャグループの名前です名前付きバックリファレンス
\g'name'ここで「name」はキャプチャグループの名前です名前付きサブルーチンの呼び出し
\g'name'ここで「name」はキャプチャグループの名前です名前付きバックリファレンス
\g<0>再帰
\g'0'再帰
\g<1>ここで1はキャプチャグループの数ですサブルーチンの呼び出し
\g<1>ここで1はキャプチャグループの数ですバックリファレンス
\g'1'ここで1はキャプチャグループの数ですサブルーチンの呼び出し
\g'1'ここで1はキャプチャグループの数ですバックリファレンス
\g<-1>ここで-1は負の整数です相対サブルーチンの呼び出し
\g<-1>ここで-1は負の整数です相対バックリファレンス
\g'-1'ここで-1は負の整数です相対サブルーチンの呼び出し
\g'-1'ここで-1は負の整数です相対バックリファレンス
\g<+1>ここで+1は正の整数です前方サブルーチンの呼び出し
\g'+1'ここで+1は正の整数です前方サブルーチンの呼び出し
\G試行アンカー
\G一致アンカー
\h16進数の短縮記法
\h水平方向の空白の短縮記法
\H16進数以外の短縮記法
\H水平方向以外の空白の短縮記法
\iXML短縮記法
\IXML短縮記法
\k<name>名前付きバックリファレンス
\k'name'\k'99'名前付きバックリファレンス
\k{name}名前付きバックリファレンス
\k<1>\k<99>バックリファレンス
\k'1'\k'99'バックリファレンス
\k<-1>, \k<-2>など相対バックリファレンス
\k'-1', \k'-2'など相対バックリファレンス
\K正規表現の一致からテキストを除外する
\l小文字の短縮記法
\L小文字以外の短縮記法
\mTcl単語境界の開始
\MTcl単語境界の終了
\n改行文字
\N改行文字ではない
リテラルCRLF、LF、またはCR改行改行
\o{7777}ここで7777は任意の8進数です8進数エスケープ
\pLここでLはUnicodeカテゴリですUnicodeカテゴリ
\PLここでLはUnicodeカテゴリですUnicodeカテゴリ
\p{L}ここでLはUnicodeカテゴリですUnicodeカテゴリ
\p{IsL}ここでLはUnicodeカテゴリですUnicodeカテゴリ
\p{Category}Unicodeカテゴリ
\p{IsCategory}Unicodeカテゴリ
\p{Script}Unicodeスクリプト
\p{IsScript}Unicodeスクリプト
\p{Block}Unicodeブロック
\p{InBlock}Unicodeブロック
\p{IsBlock}Unicodeブロック
\P{Property}否定されたUnicodeプロパティ
\p{^Property}否定されたUnicodeプロパティ
\P{^Property}Unicodeプロパティ
\Q…\Eエスケープシーケンス
\r復帰文字
\R改行
\s空白の短縮記法
\S空白以外の短縮記法
\tタブ文字
\u大文字の短縮記法
\uFFFFここでFFFFは4桁の16進数ですUnicodeコードポイント
\u{FFFF}ここでFFFFは1〜4桁の16進数ですUnicodeコードポイント
\U大文字以外の短縮記法
\v垂直タブ文字
\v垂直方向の空白の短縮記法
\V垂直方向以外の空白の短縮記法
\w単語文字の短縮記法
\W単語文字以外の短縮記法
\xFFここでFFは2桁の16進数です16進数エスケープ
\xFFFFここでFFFFは4桁の16進数ですUnicodeコードポイント
\x{FFFF}ここでFFFFは1〜4桁の16進数ですUnicodeコードポイント
\XUnicodeグラフェム
\yTcl単語境界
\YTcl単語非境界
\Z文字列アンカー
\z文字列アンカー
\0NULLエスケープ
\1\78進数エスケープ
\1\9バックリファレンス
\10\778進数エスケープ
\10\99バックリファレンス
\100\3778進数エスケープ
\01\03778進数エスケープ
\<文字列アンカー
\<試行アンカー
\'文字列アンカー
\<GNU単語境界
\>GNU単語境界
[[:<:]]POSIX単語境界
[[:>:]]POSIX単語境界
(regex)キャプチャグループ
\(regex\)キャプチャグループ
(?:regex)非キャプチャグループ
(?<name>regex)名前付きキャプチャグループ
(?'name'regex)名前付きキャプチャグループ
(?#comment)コメント
(?|regex)ブランチリセットグループ
(?>regex)アトミックグループ
(?=regex)肯定先読み
(?!regex)否定先読み
(?<=regex)肯定後読み
(?<!regex)否定後読み
(?(?=regex)then|else)ここで(?=regex)は任意の有効なルックアラウンドであり、thenelseは任意の有効な正規表現ですルックアラウンド条件式
(?(regex)then|else)ここでregex, then、およびelseは任意の有効な正規表現であり、regexはキャプチャグループの名前ではありません暗黙的な先読み条件式
(?(name)then|else)ここでnameはキャプチャグループの名前であり、thenelseは任意の有効な正規表現です名前付き条件式
(?(<name>)then|else)ここでnameはキャプチャグループの名前であり、thenelseは任意の有効な正規表現です名前付き条件式
(?('name')then|else)ここでnameはキャプチャグループの名前であり、thenelseは任意の有効な正規表現です名前付き条件式
(?(1)then|else)ここで1はキャプチャグループの数であり、thenelseは任意の有効な正規表現です条件式
(?(-1)then|else)ここで-1は負の整数であり、thenelseは任意の有効な正規表現です相対条件式
(?(+1)then|else)ここで+1は正の整数であり、thenelseは任意の有効な正規表現です前方条件式
(?(+1)then|else)ここで1はキャプチャグループの数であり、thenelseは任意の有効な正規表現です条件式
(?<capture-subtract>regex)ここで「capture」と「subtract」はグループ名であり、「regex」は任意の正規表現ですバランスグループ
(?'capture-subtract'regex)ここで「capture」と「subtract」はグループ名であり、「regex」は任意の正規表現ですバランスグループ
(?&name)ここで「name」はキャプチャグループの名前です名前付きサブルーチンの呼び出し
(?(DEFINE)regex)ここで「regex」は任意の正規表現ですサブルーチンの定義
(?P<name>regex)名前付きキャプチャグループ
(?P=name)名前付きバックリファレンス
(?P=1)(?P=99)バックリファレンス
(?P>name)ここで「name」はキャプチャグループの名前です名前付きサブルーチンの呼び出し
(?R)再帰
(?0)再帰
(?1)ここで1はキャプチャグループの数ですサブルーチンの呼び出し
(?-1)ここで-1は負の整数です相対サブルーチンの呼び出し
(?+1)ここで+1は正の整数です前方サブルーチンの呼び出し

文字クラス構文機能
〜以外の任意の文字^-]\リテラル文字
\(バックスラッシュ)に続く任意の^-]\バックスラッシュはメタ文字をエスケープします
\リテラルバックスラッシュ
-それぞれ1つの文字を指定する2つのトークンの間範囲
^開始直後[否定された文字クラス
[リテラル開始ブラケット
[ネストされた文字クラス
[base-[subtract]]文字クラスの減算
[base&&[intersect]]文字クラスの交差
[base&&intersect]文字クラスの交差
[:alpha:]POSIXクラス
[:^alpha:]否定されたPOSIXクラス
\p{Alpha}POSIXクラス
\p{IsAlpha}POSIXクラス
[.span-ll.]POSIX照合シーケンス
[=x=]POSIX文字同等性