リファレンストップへ Java | 正規表現サンプル集使用した環境 JDK 6 Update 11 入力チェックなどにも使用できる正規表現のサンプル集です。
例えば、半角数値チェックが必要な場合には、以下のように実装する事ができます。 String str // チェック対象の文字列 if (!str.matches("^[0-9]*$")) { // 半角数値のみで構成された文字列ではない } また、java.util.regex.Patternはマルチスレッド環境でも安全に使用できますので、サーブレットなどの何度もチェック処理を行う必要がある環境では private static Pattern ptn = Pattern.compile("^[0-9]*$"); といったように、Pattern.compileの結果をあらかじめstatic変数で保持しておく事により、処理を少し高速化する事ができます。public xxx xxx() { String str // チェック対象の文字列 if (!ptn.matcher(str).matches()) { // 入力エラー時の処理 } } ※ 日付のチェックに関しては正規表現では、あくまで形式のチェックができるだけですので、妥当性のチェック(うるう年計算など)が必要な場合は 以下のようにDateFormat#parseを使用してチェックを行う必要があります。 SimpleDateFormat sd = new SimpleDateFormat("yyyy/M/d"); sd.setLenient(false); try { sd.parse("2009/2/29"); } catch(ParseException e) { // 入力エラー } |
|