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