C#を使用して正規表現を利用して郵便番号のバリデーションを行う方法について解説します。
正規表現を使うことで郵便番号が特定のパターンに従っているかどうかを簡単に確認できます。
正規表現で郵便番号の入力チェック
まず初めに正規表現を使用して郵便番号が指定のパターンに従っているかをチェックする方法を紹介します。
using System;
using System.Text.RegularExpressions;
string postalCode= "123-4567";
bool isValid = Regex.IsMatch(postalCode, @"^\d{3}-\d{4}$");
この正規表現パターンは”123-4567″ のようなハイフンを含む郵便番号を許容します。
- ^\d{3}: 行の先頭から3桁の数字で始まることを表します。
- -: ハイフンが続きます。
- \d{4}$: ハイフンの後に4桁の数字が続き、行の末尾で終わることを表します。
この正規表現は、指定の形式に沿った郵便番号を許容しそれ以外の形式は不許可とします。
ハイフンなしの数字7桁で許可する
ハイフンなしの郵便番号も許容する場合、正規表現を以下のように変更します。
using System;
using System.Text.RegularExpressions;
string postalCode= "1234567";
bool isValid = Regex.IsMatch(postalCode, @"^\d{7}$");
この正規表現パターンは、”1234567″ のようなハイフンを含まない7桁の郵便番号を許容します。
- ^\d{7}$: 行の先頭から7桁の数字で始まり行の末尾で終わることを表します。
これによりハイフンなしの郵便番号も正しく検証できます。
広告
ハイフンありなし関係なく許可する
この正規表現パターンは”123-4567″ または “1234567” のようなハイフンの有無を含む郵便番号を許容します
using System;
using System.Text.RegularExpressions;
string postalCode= "1234567";
bool isValid = Regex.IsMatch(postalCode, @"^\d{3}-?\d{4}$");
ガマくん
電話番号の正規表現についても以下記事で紹介してるよ
[C#]正規表現で電話番号の入力チェック!ハイフンありなしについても
電話番号の形式が正しいかどうかを確認することはプログラミングにおいてよく行われるタスクの一つです。C#では正規表現を使用して簡単に電話番号の検証することができます。この記事ではC#の正規表現を使って電話番号が正しいフォーマットかどうかを確認する方法について解説します。
広告
まとめ
C#を使用して正規表現を利用した郵便番号のバリデーションについて解説しました。
正規表現は特定のパターンに従う文字列の検証に非常に強力な手段です。
ぜひこれを参考にして郵便番号のバリデーションを実装してみてください。