C# PROGRAM

ASP.NET(C#) MVCモデル入門~正規表現を使って郵便番号をチェックする

正規表現を使って正しい郵便番号かどうかを確認する方法

今回は、前回のプログラムに、郵便番号用の入力項目を作成して、その項目が郵便番号の形式(999-9999)で入力されたかどうかを確認するアノテーション(RegularExpression)を追加します。

[RegularExpression("正規表現", ErrorMessage = "エラーメッセージ")]

ErrorMessageプロパティーに何も設定しなければ、デフォルトで「The field プロパティー名 must match the regular expression '設定した正規表現'.」というメッセージを表示します。
RegularExpressionアノテーションの詳しい内容は、以下のマイクロソフト公式サイトを参照してください。

正規表現を使って郵便番号をチェックするやり方は、ここでは以下のようにしています。

"[0-9{3}-[0-9]{4}"

これは、「数字3桁」-(ハイフン)「数字4桁」かどうかチェックしています。
また、以下のように記述しても上記と同様の内容になりますが、全角文字もチェックを通してしまうので、半角のみをOKにしたい場合は、上記の書き方にしてください。

@"¥d{3}-¥d{4}"

先頭の「@」は、円マーク()を使う場合に必要になります。

ビューに郵便番の入力項目を追加する

Input.cshtml に郵便番号の入力項目を追加します。

テキストボックスに placeholder属性を設定して、どのように入力すればいいのかをガイドしています。

cs-mvc-9-1

郵便番号形式以外の場合のエラーメッセージ

入力した値が郵便番号の形式ではない場合は、ViewModel で設定したエラーメッセージを表示します。

cs-mvc-9-2

Indexビューに郵便番号を追加する

郵便番号が表示されるように、Index.cshtml に項目を追加します。

入力した郵便番号が表示される

入力内容に問題がなければ、入力値が画面に表示されます。

cs-mvc-9-3

-C#, PROGRAM
-,