正しい時刻文字列かをチェックするFunctionです。
「HH:mm:ss」形式と「HH:mm」形式の2パターン用意しました。
サンプルソース
例1)時刻文字列(HH:mm:ss)チェックFunction
1 2 3 4 5 6 7 8 9 10 11 12 |
/** * 時刻文字列チェック(HH:mm:ss) * @param str 対象文字列 * @return true:正しい時刻 false:誤った時刻 */ public static boolean isHHmmss(String str) { boolean result = false; if(str != null) { result = str.matches("^(0[0-9]{1}|1{1}[0-9]{1}|2{1}[0-3]{1}):(0[0-9]{1}|[1-5]{1}[0-9]{1}):(0[0-9]{1}|[1-5]{1}[0-9]{1})$"); } return result; } |
- (結果例)
- 00:00:00 ⇒ true 23:59:59 ⇒ true 23:59:60 ⇒ false 235959 ⇒ false 12:34 ⇒ false
例2)時刻文字列(HH:mm)チェックFunction
1 2 3 4 5 6 7 8 9 10 11 12 |
/** * 時刻文字列チェック(HH:mm) * @param str 対象文字列 * @return true:正しい時刻 false:誤った時刻 */ public static boolean isHHmm(String str) { boolean result = false; if(str != null) { result = str.matches("^(0[0-9]{1}|1{1}[0-9]{1}|2{1}[0-3]{1}):(0[0-9]{1}|[1-5]{1}[0-9]{1})$"); } return result; } |
- (結果例)
- 00:00 ⇒ true 23:59 ⇒ true 23:60 ⇒ false 2359 ⇒ false 12:34:56 ⇒ false
備考
- フォーマットだけでなく、存在する時刻かもチェックします。
- nullを渡した場合はfalseを返します。