PHPまとめ - 正規表現

HOME | TOP

■ メールアドレス

メールアドレス仕様に忠実にマッチさせると22世紀までかかりそうなので、緩めにマッチさせる。

▼ 使用文字種と、間に一つだけ"@"があるか程度をチェック


▼ "@"以外にも"."や"-"の位置も簡易チェック

「-foo@.example.com」のように、変わった位置に"-"や"."があれば弾く。


■ URLアドレス

▼ URLアドレスかどうか

変数$urlの値がURLアドレスかどうかを見ている。

ホスト名部分に必ず"."が含まれないと弾くので「IPアドレス」はOKで、「localhost」はNG




▼ URLアドレスを抽出

文字列中に含まれるURLアドレスをすべて抽出する。


■ 種々のデータ形式

▼ よくあるIDの形式

英小文字で始まって、英小文字または数字がつづく。間に"-"が入ってもよい。

この例では4〜12文字数かをチェック

一度にチェックするよりも分けたほうがスッキリするし速い




▼ パスワードの簡易チェック

入力されたパスワードの簡易チェック(パスワードとして適切かどうか)

使用できる文字種類および長さをチェックし、文字タイプが複数種類使われてるかどうかもチェックする。

その他、入力されたパスワードがIDと同じになっていないかもシステム作りでは必須チェック項目




▼ 一行にマッチ


▼ 連続文字にマッチ

後方参照\1を使って、連続文字を抽出しています。


■ 文字コード

▼ 非アスキー文字が含まれるか

これはアルファベット圏かマルチバイト圏かの簡易チェック




▼ シフトJIS+アスキー


▼ 日本語EUC+アスキー


▼ JISコード


▼ 改行コード


▼ バイナリコード



■ タグにマッチさせる

▼ 特定のタグに囲まれた部分にマッチ

ゼロ幅の肯定後読みとゼロ幅の肯定先読みを使って特定のタグに囲まれた部分にマッチさせている。




▼ すべてのタグにマッチさせる

いちばん上は最短マッチで、その下は最長マッチを使っている。どちらもシンプルな構造のタグにマッチさせることができる。

ただし、以下の特殊なケース(タグのネスト)では対応できない。


2010(C)Mingw