正規表現によるフォーム入力データの妥当性確認

正規表現とは文字列の形式を表現するための表記方法で、Webページではメールフォームなどでユーザーが入力した文字列の検証によく使われます。ここでは、お問い合わせや登録フォームに入力してもらう文字列の妥当性確認をする正規表現例を示します。

正規表現によるマッチングを行う関数preg_match

preg_matchは、正規表現によるパターンと入力した文字列がマッチしているか検証するPHPの関数です。

基本的な書式は、以下のようになります。

preg_match($pattern, $subject)
$pattern : 正規表現による文字列のパターン
$subject : 入力文字列
返り値 : マッチした場合は1、マッチしなかった場合は0、エラーが発生した場合はFALSE

正規表現の構文

パターンは、一対の区切り文字(例えばスラッシュ"/")で囲んで作成します。

構文の詳細は、下記ページを参照してください。
http://msdn.microsoft.com/ja-jp/library/cc392020.aspx

パターン例

全角カタカナのバリデーション

名前のフリガナを全角カタカナ、'ー'、全角スペースで入力してもらう場合は、以下のようにバリデーションをかけます。

電話番号のバリデーション

電話番号をハイフン(-)付きで入力してもらう場合は、以下のようにバリデーションをかけます。

郵便番号のバリデーション

郵便番号を、「xxx-xxxx」の形式で入力してもらう場合は、以下のようにバリデーションをかけます。

メールアドレスのバリデーション

メールアドレスの形式はRFCの規格で規定されていますが、これに準拠した正規表現は非常に難しく、バリデーションで使うには現実的ではありません。

従って、ここでは簡易的なチェックを行うパターンを示します。

もっと簡単に、「(@以外の繰り返し)@(@以外の繰り返し).(@以外の繰り返し)」でOKとするなら、以下のようにします。

スポンサーリンク

特集記事

  • jQuery Mobile Image

    jQuery Mobile を基本から覚える
    スマホサイト制作に最適なフレームワークの利用方法を解説。DEMOページ・サンプルコードで動作を確認できます。

スポンサーリンク

ページの先頭へ