4

AM/PM で時刻を検証するための正規表現形式が必要です

私はこれを使いました

^(?:0?[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$

しかし、これはいつでも受け付けていません。

私の時間形式は、このように12時間形式( 03:23:15 AM )になります。これを操作するための正規表現を知っている人はいますか???

4

4 に答える 4

2

これを試して:

[0][0-9]|[1][0-2][:][0-5][0-9][:][0-5][0-9][ ][AM]|[PM]
于 2012-06-12T11:53:08.313 に答える
2

これを試すことができますか?

([0][0-9])|([1][0-2])\:[0-5][0-9]\:[0-5][0-9][:b]*(AM|PM|am|pm)
  • xx:yy:zz に一致します。
  • 最初の用語([0][0-9])|([1][0-2])は xx を 00-09 または 10-12 に一致させます
  • 後続の用語[0-5][0-9]は、yy、zz を 00 から 59 までの分、秒に制約します。
  • スペースはオプションです
  • 最後に、AM または PM は大文字または小文字で一致します
于 2012-06-12T10:12:37.457 に答える
1

これを試して:

(1[012]|[1-9])(:[0-5][0-9]){2}(\\s)?(?i)(am|pm)

正規表現には am pm も含まれます

(\\s)?  - follow by a white space (optional)
(?i)    - next checking is case insensitive
(am|pm) - follow by am or pm
于 2012-06-12T10:09:57.473 に答える
1

[01][0-9]:[0-5][0-9]:[0-5][0-9] (AM|PM)あなたの例と一致するはずです。

[01]\d(:[0-5]\d){2} (AM|PM)シンプルにしたい場合。

編集:コメントはこれが機能しないことを指摘しているので、これを試してください:([01][0-2]|0?[1-9])(:[0-5][0-9]){2} (AM|PM)

于 2012-06-12T10:12:42.097 に答える