JavaのFormバリデーション|Integer型の全角数字が問題となった件

IT
スポンサーリンク

formのバリデーションで電話番号、郵便番号、その他数値を入力する場面で全角数字はエラーにしたいといった場合の書き方について書きます。
Javaは頭が良いので、全角数字も問題なくString型に変換してくれます。そのため、全角数字でエラーにしたいのにバリデーションを通ってしまうって部分で悩みました。
半角英数字、記号とかはNumberFomatExceptionが吐かれるのでcatchすれば良いのですが、全角数字は通っちゃいますね。

スポンサーリンク

全角数字の場合の正規表現

全て全角数値

/^[0-9]+$/

これだけ実装して完了しました。
めでたし、めでたし。

その他サンプル正規表現

半角アルファベット

/^[a-z]+$/

全角アルファベット

/^[A-Z]+$/

アルファベット(大文字・小文字)

/^[a-zA-Z]+$/
IT
スポンサーリンク
『ベーシックインカムでセミリタイア!』を目指す20代のブログ