| 文字 |
説明 |
| \ |
次の文字を特殊文字、またはリテラル文字、または後方参照、または8進数エスケープにマークします。例えば、「n」は文字「n」にマッチします。 「\n」は改行にマッチします。シーケンス「\\」は「\」にマッチし、「\(」は「(」にマッチします。 |
| ^ |
入力文字列の先頭位置にマッチします。RegExpオブジェクトのMultilineプロパティが設定されている場合、^は“\n”または“\r”の後の位置にもマッチします。 |
| $ |
入力文字列の終端位置にマッチします。RegExpオブジェクトのMultilineプロパティが設定されている場合、$は“\n”または“\r”の前の位置にもマッチします。 |
| * |
前のサブエクスプレッションに0回以上マッチさせます。例えば、zo*は「z」と「zoo」の両方にマッチします。*は{0,}に等しいです。 |
| + |
前のサブエクスプレッションに1回以上マッチさせます。例えば、「zo+」は「zo」と「zoo」にマッチしますが、「z」にはマッチしません。+は{1,}に等しいです。 |
| ? |
前のサブエクスプレッションに0回または1回マッチさせます。例えば、「do(es)?」は「do」または「does」内の「do」にマッチします。?は{0,1}に等しいです。 |
| {n} |
nは非負整数です。確定的にn回マッチさせます。例えば、「o{2}」は「Bob」内の「o」にはマッチしませんが、「food」内の2つのoにはマッチします。 |
| {n,} |
nは非負整数です。少なくともn回マッチさせます。例えば「o{2,}」は「Bob」内の「o」にはマッチしませんが、「foooood」内のすべてのoにはマッチします。「o{1,}」は「o+」に等しいです。「o{0,}」は「o*」に等しいです。 |
| {n,m} |
mとnは共に非負整数で、n≤mです。少なくともn回マッチさせ、最大m回マッチさせます。例えば「o{1,3}」は「fooooood」内の最初の3つのoにマッチします。「o{0,1}」は「o?」に等しいです。カンマと2つの数の間には空白を含めないでください。 |
| ? |
この文字が他の任意の制約記号(*,+,?,{n},{n,},{n,m})に続くとき、マッチパターンは非貪欲になります。非貪欲モードはできるだけ少ないマッチを行い、デフォルトの貪欲モードはできるだけ多くのマッチを行います。例えば、文字列「oooo」の場合、「o+?」は単一の「o」にマッチし、「o+」はすべての「o」にマッチします。 |
| . |
“\n”を除く任意の単一の文字にマッチします。“\n”を含む任意の文字にマッチさせるには、「[.\n]」のパターンを使用します。 |
| (pattern) |
パターンにマッチし、そのマッチを取得します。取得したマッチは生成されたMatchesコレクションから取得可能で、VBScriptではSubMatchesコレクションを使用し、JScriptでは$0…$9プロパティを使用します。丸括弧文字をマッチさせるには、「\(」または「\)」を使用します。 |
| (?:pattern) |
パターンにマッチしますが、マッチの結果を取得しません。つまりこれは非取得マッチで、後で使用するための保存を行いません。これは、「(|)」キャラクタを使って複数のパターンの部分を組み合わせるときに非常に便利です。例えば「industr(?:y|ies)」は「industry|industries」よりも簡潔なエクスプレッションです。 |
| (?=pattern) |
肯定先読み、任意のパターンにマッチする文字列の先頭にマッチします。これは非取得マッチで、取得する必要はありません。例えば「Windows(?=95|98|NT|2000)」は「Windows2000」の「Windows」にマッチしますが、「Windows3.1」内の「Windows」にはマッチしません。先読みは文字を消費しません。つまり、マッチが発生した後、最終マッチの後に次のマッチ検索を開始します。 |
| (?!pattern) |
否定先読み、任意のパターンにマッチしない文字列の先頭にマッチします。これは非取得マッチで、取得する必要はありません。例えば「Windows(?!95|98|NT|2000)」は「Windows3.1」の「Windows」にマッチしますが、「Windows2000」にある「Windows」にはマッチしません。先読みは文字を消費しません。つまり、マッチが発生した後、最後のマッチの後に次のマッチの検索を開始します。 |
| x|y |
xまたはyにマッチします。例えば、「z|food」は「z」または「food」にマッチします。「(z|f)ood」は「zood」または「food」にマッチします。 |
| [xyz] |
文字セット。含まれる任意の1文字にマッチします。例えば、「[abc]」は「plain」内の「a」にマッチします。 |
| [^xyz] |
否定文字集合。含まれない任意の文字にマッチします。例えば、「[^abc]」は「plain」内の「p」にマッチします。 |
| [a-z] |
文字範囲。指定された範囲の任意の文字にマッチします。例えば、「[a-z]」は「a」から「z」までの任意の小文字にマッチします。 |
| [^a-z] |
否定文字範囲。指定された範囲内にない任意の文字にマッチします。例えば、「[^a-z]」は「a」から「z」の範囲外の任意の文字にマッチします。 |
| \b |
単語境界にマッチします。つまり、単語と空白の間の位置です。例えば、「er\b」は「never」の「er」にマッチしますが、「verb」の「er」にはマッチしません。 |
| \B |
非単語境界にマッチします。「er\B」は「verb」の「er」にマッチしますが、「never」の「er」にマッチしません。 |
| \cx |
xで指定された制御文字にマッチします。例えば、\cMはControl-Mまたはキャリッジリターンにマッチします。xの値はA-Zまたはa-zのいずれかでなければなりません。その他の場合は、cをリテラルの「c」として扱います。 |
| \d |
数字の文字にマッチします。これは[0-9]に等しいです。 |
| \D |
非数字文字にマッチします。これは[^0-9]に等しいです。 |
| \f |
ページ区切りにマッチします。これは\x0cと\cLに等しいです。 |
| \n |
改行にマッチします。これは\x0aと\cJに等しいです。 |
| \r |
キャリッジリターンにマッチします。これは\x0dと\cMに等しいです。 |
| \s |
任意の空白文字にマッチします。これはスペース、タブ、ページ区切りなどです。これは[\f\n\r\t\v]に等しいです。 |
| \S |
任意の非空白文字にマッチします。これは[^\f\n\r\t\v]に等しいです。 |
| \t |
タブ文字にマッチします。これは\x09と\cIに等しいです。 |
| \v |
垂直タブにマッチします。これは\x0bと\cKに等しいです。 |
| \w |
アンダースコアを含む任意の単語文字にマッチします。これは「[A-Za-z0-9_]」に等しいです。 |
| \W |
任意の非単語文字にマッチします。これは「[^A-Za-z0-9_]」に等しいです。 |
| \xn |
nにマッチ、nは16進数エスケープ値です。16進数エスケープ値は確定的に2桁の長さです。例えば、「\x41」は「A」にマッチします。「\x041」は「\x04&1」と等しいです。正規表現内ではASCIIコーディングを使用できます。 |
| \num |
numにマッチ、numは正の整数です。取得したマッチへの参照です。例えば、「(.)\1」は連続する同じ文字2つにマッチします。 |
| \n |
8進数エスケープ値または後方参照を示します。もし\nの前に少なくともn個の取得したサブエクスプレッションがある場合、nは後方参照になります。さもなくば、nが8進数の数字(0-7)であればnは8進数エスケープ値になります。 |
| \nm |
8進数エスケープ値または後方参照を示します。もし\nmの前に少なくともnm個の取得したサブエクスプレッションがある場合、nmは後方参照になります。もし\nの前に少なくともn個の取得があれば、nは文字mの後に続く後方参照になります。前の条件が満たされなければ、nとmが8進数の数字(0-7)であれば\nmが8進数エスケープ値nmにマッチします。 |
| \nml |
nが8進数の数字(0-3)で、mとlが8進数の数字(0-7)であれば、8進数エスケープ値nmlにマッチします。 |
| \un |
nにマッチ、nは4桁の16進数数字で表されたUnicode文字です。例えば、\u00A9は著作権記号(©)にマッチします。 |