私はJavaプログラムを書いています。プログラムでは、ユーザーから時間を入力しています。入力を文字列として取り、それがパターンと一致するかどうかを確認します。私が望むパターンはフォーマットです:10:15 AM時間マッチングの仕方正規表現パターン
これは私が試みたものですが、うまくいかないようです。
public static boolean checkTimePattern(String time) {
Pattern pattern = Pattern.compile("\\d{1}:\\d{1}^[A]{1}[M]{1}");
if(pattern.matcher(time).matches()){
return true;
}else{
return false;
}
}
ありがとうございます。
正規表現ではなくSimpleDateFormatを使用する – Jens
正規表現で何を確認しようとしていますか? '\ d {1}'は1桁のみを意味し、 '^ [A] {1}'は '^'を意味し、その後は 'A'を意味します。これらすべては意味をなさないし、好みの書式 –