Webサイトでよくある郵便番号の入力。
サーバー側では、正規表現を使うと、こんな感じでチェックできます。
郵便番号をチェックするサンプル
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | import java.util.regex.Pattern; public class RegZipCodeTest { public static void main(String[] args) { // //ハイフン付きで郵便番号チェック // //true System.out.println("111-2222:" + isZipCode1("111-2222")); //false System.out.println("1a1-2222:" + isZipCode1("1a1-2222")); System.out.println("111-22:" + isZipCode1("111-22")); System.out.println("11112222:" + isZipCode1("11112222")); // //ハイフンなしで郵便番号チェック // //true System.out.println("1112222:" + isZipCode2("1112222")); //false System.out.println("1a12222:" + isZipCode2("1a12222")); System.out.println("11122:" + isZipCode2("11122")); System.out.println("1112222:" + isZipCode2("1112222")); } public static boolean isZipCode1(String str) { //ハイフン付きで郵便番号チェック return Pattern.matches("^[0-9]{3}-[0-9]{4}$", str); } public static boolean isZipCode2(String str) { //ハイフンなしで郵便番号チェック return Pattern.matches("^[0-9]{7}$", str); } } |
サンプルの解説
Pattern#matches(String,String)にて、チェック形式の正規表現とチェック対象の文字列を指定することで、正規表現にマッチしているか、チェックすることができます。
ハイフン付き郵便番号の正規表現 | ^[0-9]{3}-[0-9]{4}$ |
ハイフンなし郵便番号の正規表現 | ^[0-9]{7}$ |