ここでは Perl における RE(Regular Expressions) について説明する。
perl の正規表現における特殊文字は以下の通りである。
'.' - 任意の一文字。改行にはマッチしない。'[' - 文字集合の開始。"[^^]" は '^' 以外のすべて。"[a-z]" は小文字のアルファベット。'-', '[', ']', '^' そのものを集合としたい場合は "[]^\\[-]" という順序にする。'\' - エスケープ。特殊文字のエスケープに用いる。'*' - 0個以上の繰り返しにマッチ'^' - 行頭'$' - 行末'(' - グループの開始。')' - グループの終了。'|' - グループの論理和。'+' - 1個以上の繰り返しにマッチ'?' - 0個か1個の繰り返しにマッチ'{' - 繰り返し回数。"{m}", "{m,n}", "{m,}", "{,n}" はそれぞれ m 回, m〜n 回, m 回以上, n 回以下を表す。perl の正規表現における最左最小(非貪欲)マッチは以下の通りである。
'*?' - 0個以上の繰り返しに最左最小(非貪欲)マッチ'+?' - 1個以上の繰り返しに最左最小(非貪欲)マッチ'??' - 0個か1個の繰り返しに最左最小(非貪欲)マッチ'{m}?' - m 回の繰り返しに最左最小(非貪欲)マッチ'{m,}?' - m 回以上の繰り返しに最左最小(非貪欲)マッチ'{m,n}?' - m〜n 回の繰り返しに最左最小(非貪欲)マッチperl の正規表現における絶対最大マッチは以下の通りである。
'*+' - 0個以上の繰り返しに絶対最大マッチ'++' - 1個以上の繰り返しに絶対最大マッチ'?+' - 0個か1個の繰り返しに絶対最大マッチ'{m}+' - m 回の繰り返しに絶対最大マッチ'{m,}+' - m 回以上の繰り返しに絶対最大マッチ'{m,n}+' - m〜n 回の繰り返しに絶対最大マッチperl の文字集合には以下の文字クラス名が用意されている。
| 文字クラス | ISO646で等価な文字集合 | 備考 |
| "[:alnum:]" | "[0-9A-Za-z]" | |
| "[:alpha:]" | "[A-Za-z]" | |
| "[:ascii:]" | "[A-Za-z]" | POSIX にはない。 |
| "[:blank:]" | "[\t ]" | '\h' と等価。 |
| "[:cntrl:]" | "[^[:print:]]" | |
| "[:digit:]" | "[0-9]" | '\d' と等価。 |
| "[:graph:]" | "[^ [:cntrl:]]" | |
| "[:lower:]" | "[a-z]" | |
| "[:print:]" | "[ !-\/0-9:-\@A-Z[-`a-z{-~]" | |
| "[:punct:]" | "[!-\/:-\@[-`{-~]" | |
| "[:space:]" | "[\t-\r ]" | '\s' と '^K' と等価。 |
| "[:upper:]" | "[A-Z]" | |
| "[:word:]" | "[0-9A-Za-z_]" | '\w' と等価。POSIX にはない。 |
| "[:xdigit:]" | "[0-9A-Fa-f]" |
ここで "[:^digit:]", "[:^space:]" のような POSIX にはない補集合もサポートされる。
他に Perl が他の処理系に多大な影響を与えた特殊文字を以下にあげる。
(?modifiers) - マッチ修飾子(?[modifiers:]pattern) - [マッチ修飾子付き]後方参照なしグループ(?|pattern) - 「枝リセット」パターンによるグループ番号の振り直し(?=pattern) - ゼロ幅の先読み言明(?!pattern) - ゼロ幅の否定の先読み言明(?<=pattern) - ゼロ幅の後読み言明、\K も参照(?<!pattern) - ゼロ幅の否定の後読み言明(?'NAME'pattern) - 名前付きグループ(?<NAME>pattern) - 同上(?P<NAME>pattern) - 同上(?&NAME) - 名前付きパターンへの再帰(?P>NAME) - 同上(?(cond)Ypattern[|Npattern]) - 条件付きパターン(?>pattern) - 絶対最大マッチ\1 - 後方参照。1 には正の整数。[] 内では不可。\g1 - 後方参照。[] 内では不可。\g{1} - 後方参照。[] 内では不可。\g{-1} - 相対後方参照。[] 内では不可。\g{name} - 名前後方参照。[] 内では不可。\k'name' - 名前後方参照。[] 内では不可。\k<name> - 同上\k{name} - 同上特に「後方参照なしグループ」はグループ番号を無駄に消費しないので極めて有用である。詳しくは Perl のドキュメントを参照のこと。
p - ${^PREMATCH}, ${^MATCH}, ${^POSTMATCH} のようなマッチ文字列を保持i - 大文字小文字の無視m - マルチラインモード。'^', '$' がそれぞれ行頭、行末にマッチする。s - シングルラインモード。'.' が改行にもマッチする。x - 読み易さの為に改行含む空白やコメントの挿入を許可。g, c - 大域マッチ及びカレント位置の保持。これらは、正規表現内では指定不可。