Sep 25, 2013 4:51:00 PM
上記のように日時形式の正規表現を作成しようとしていますが、時間には次の正規表現があります
([1-9]|1[0-2]|):([0-5][0-9]:[0-5][0-9]) (AM|am|PM|pm)
しかし、日付がわからないようです。助けていただければ幸いです!!
使用しない理由
String text = "Sep 25, 2013 4:51:00 PM";
Date date = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss a").parse(text);
何を達成しようとしていますか?日付からいくつかのコンポーネントを取得したいだけだと推測できるので、SimpleDateFormat はおそらく実際に必要なものです。RegExp ではできないロケールも処理できるため、正規表現の代わりに使用することをお勧めします。
編集:
(Jan|Feb| ... |Dec) のような月の OR 正規表現が必要です。残りは単純で、スペース \s* に一致し、[0-9]{1,2} に一致し、a,
に一致します。再びいくつかのスペース \s* に一致し、年 [0-9]{4} に一致し、さらに別のスペース \s* と残りの RegExp に一致します。