正規表現メタ文字一覧

一つの文字にマッチするメタ文字

. 改行以外の任意の文字にマッチ
\w アルファベット、数字、アンダースコア( _ )にマッチ
\W アルファベット、数字、アンダースコア( _ )以外にマッチ
\t タブにマッチ
\n 改行にマッチ(CR+LF)
\r リターン(復帰)にマッチ ※CR+LFのCR部分にはマッチしない
\f 改行にマッチ
\d 数字にマッチ
\D 数字以外にマッチ

量子指定メタ文字

* 0回以上の繰り返しにマッチ(最長マッチ)
*? 0回以上の繰り返しにマッチ(最短マッチ)
+ 1回以上の繰り返しにマッチ(最長マッチ)
{n} n回の繰り返しにマッチ
{n,} n回以上の繰り返しにマッチ
{n,m} n回以上m回以下の繰り返しにマッチ
? 0回または1回の出現にマッチ

 

正規表現スニペット【PHP版】

IPアドレスにマッチ

$pattern = '/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/';
$subject = '255.255.255.255';
preg_match($pattern, $subject, $m);
//返り値は 1 $m[0]は 255.255.255.255

//または

$pattern = '/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/';
$subject = '2555.2555.2555.2555';
preg_match($pattern, $subject, $m);
//返り値は 0

ファイル名にマッチ

$pattern = '/[\/a-zA-Z0-9\-]+/';
$subject = '/contents/img/';
preg_match($pattern, $subject, $m);
//$m[0]は /contents/img/

先読み

$pattern = '/Captain(?= America)/';
$subject = 'Captain America';
preg_match($pattern, $subject, $m);
//$m[0]は Captain