PHPの正規表現にはPerl互換の正規表現と、POSIX拡張正規表現の2種類があります。
preg_〜〜:Perl互換
関数 | 用途 |
---|---|
preg_grep | パターンにマッチする配列の要素を返す |
preg_match_all | 繰返し正規表現検索を行う |
preg_match | 正規表現によるマッチングを行う |
preg_quote | 正規表現文字をクオートする |
preg_replace_callback | 正規表現検索を行い コールバック関数を使用して置換を行う |
preg_replace | 正規表現検索および置換を行う |
preg_split | 正規表現で文字列を分割する |
ereg_〜〜:POSIX拡張
関数 | 用途 |
---|---|
ereg_replace | 正規表現による置換 |
ereg | 正規表現にマッチさせる |
eregi_replace | 大文字小文字を区別せずに正規表現による置換を行う |
eregi | 大文字小文字を区別せずに正規表現によるマッチングを行う |
split | 正規表現により文字列を分割し、配列に格納する |
spliti | 大文字小文字を区別しない正規表現により文字列を分割し、配列に入れる |
sql_regcase | 大文字小文字を区別しないマッチングのための正規表現を作成する |
mb_regex_〜〜:Perl互換(マルチバイト)
関数 | 用途 |
---|---|
mb_regex_encoding | カレントの正規表現用のエンコーディングを文字列として返す |
mb_regex_set_options | マルチバイト正規表現関数のデフォルトオプションを取得または設定する |
mb_ereg_〜〜:POSIX拡張(マルチバイト)
関数 | 用途 |
---|---|
mb_ereg_match | マルチバイト文字列が正規表現に一致するか調べる |
mb_ereg_replace | マルチバイト文字列に正規表現による置換を行う |
mb_ereg_search_getpos | 次の正規表現検索を開始する位置を取得する |
mb_ereg_search_getregs | マルチバイト文字列が正規表現に一致する部分があるか調べる |
mb_ereg_search_init | マルチバイト正規表現検索用の文字列と正規表現を設定する |
mb_ereg_search_pos | 指定したマルチバイト文字列が正規表現に一致する部分の位置と長さを返す |
mb_ereg_search_regs | 指定したマルチバイト文字列が正規表現に一致する部分を取得する |
mb_ereg_search_setpos | 次の正規表現検索を開始する位置を設定する |
mb_ereg_search | 指定したマルチバイト文字列が正規表現に一致するか調べる |
mb_ereg | マルチバイト文字列に正規表現マッチを行う |
mb_eregi_replace | マルチバイト文字列に大文字小文字を区別せずに正規表現による置換を行う |
mb_eregi | マルチバイト文字列に大文字小文字を区別しない正規表現マッチを行う |
関数 | 用途 |
---|---|
mb_split | マルチバイト文字列を正規表現により分割する |
メタ文字
メタ文字 | 意味 |
---|---|
^ | 文字列の先頭をあらわす [ ] の中は除く |
$ | 文字列の末尾を表わす |
+ | 1回以上の連続する文字 |
* | 0回以上の連続する文字 |
? | 0回、または1回だけの文字 |
{n} | n回以上の連続する文字 |
{n,m} | n回から m回まで連続する文字 |
{.m} | 0回から m回まで連続する文字 |
[ ] | [ ]内のいずれかの1文字 |
. | 任意の1文字 (ただし改行文字を除く) |
| | OR |
() | 本文を参照する文字 |
\ | エスケープ文字 (この記号の後の特殊文字をそのまま出力する) |
¥n | 改行文字 |