Java

Javaで郵便番号のチェックを実装する方法

2020年9月8日

はじめに

Javaで郵便番号のチェックを実装する方法を紹介します。

今回のチェックで使用する正規表現は以下です。

郵便番号の形式郵便番号の例正規表現
ハイフン付きの郵便番号156-0044^[0-9]{3}-[0-9]{4}$
ハイフンなしの郵便番号1560044^[0-9]{7}$

スポンサーリンク

ハイフン付きの郵便番号チェック

ハイフン付きの郵便番号チェックは次の通り。

/**
 * 郵便番号チェック
 * @param value 検証対象の値
 * @return 結果(true:郵便番号、false:郵便番号ではない)
 */
public static boolean isZipCodeHyphen(String value) {
    boolean result = false;

    if (value != null) {
        Pattern pattern = Pattern.compile("^[0-9]{3}-[0-9]{4}$");
        result = pattern.matcher(value).matches();
    }

    return result;
}

動作確認

System.out.println("空文字:" + isZipCodeHyphen(""));
System.out.println("NULL:" + isZipCodeHyphen(null));
System.out.println("【正常】156-0044:" + isZipCodeHyphen("156-0044"));
System.out.println("【桁不足】15-0044:" + isZipCodeHyphen("15-0044"));
System.out.println("【桁不足】156-004:" + isZipCodeHyphen("156-004"));
System.out.println("【桁超過】1560-0044:" + isZipCodeHyphen("1560-0044"));
System.out.println("【桁超過】156-00440:" + isZipCodeHyphen("156-00440"));
System.out.println("【不正文字】1a6-0044:" + isZipCodeHyphen("1a6-0044"));
System.out.println("【不正文字】156-a044:" + isZipCodeHyphen("156-a044"));
System.out.println("【不正文字】156=0044:" + isZipCodeHyphen("156=0044"));

【実行結果】

  • 空文字:false
  • NULL:false
  • 【正常】156-0044:true
  • 【桁不足】15-0044:false ← 先頭3桁が桁不足
  • 【桁不足】156-004:false ← 後方4桁が桁不足
  • 【桁超過】1560-0044:false ← 先頭3桁が桁超過
  • 【桁超過】156-00440:false ← 後方4桁が桁超過
  • 【不正文字】1a6-0044:false ← 先頭3桁に不正文字
  • 【不正文字】156-a044:false ← 後方4桁に不正文字
  • 【不正文字】156=0044:false ← 区切り文字が不正

ハイフンなしの郵便番号チェック

ハイフンなしの郵便番号チェックは次の通り。

/**
 * 郵便番号チェック
 * @param value 検証対象の値
 * @return 結果(true:郵便番号、false:郵便番号ではない)
 */
public static boolean isZipCode(String value) {
    boolean result = false;

    if (value != null) {
        Pattern pattern = Pattern.compile("^[0-9]{7}$");
        result = pattern.matcher(value).matches();
    }

    return result;
}

動作確認

System.out.println("空文字:" + isZipCode(""));
System.out.println("NULL:" + isZipCode(null));
System.out.println("【正常】1560044:" + isZipCode("1560044"));
System.out.println("【桁不足】150044:" + isZipCode("150044"));
System.out.println("【桁超過】15600044:" + isZipCode("15600044"));
System.out.println("【不正文字】1a60044:" + isZipCode("1a60044"));

【実行結果】

  • 空文字:false
  • NULL:false
  • 【正常】1560044:true
  • 【桁不足】150044:false
  • 【桁超過】15600044:false
  • 【不正文字】1a60044:false

最後に

本記事ではJavaで郵便番号のチェックを実装する方法を紹介しました。

【関連記事】

helpful