0

現在 Java アプリケーションで使用されているこの正規表現を取得し、JavaScript で使用しようとしています。

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

しかし、私は問題に直面しています。最初はSyntaxError: invalid quantifierエラーが発生していました。だから私は逃げて?、結局

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

ただし、次のテストを実行すると、正しく一致しません。

"1:00 am".match(/(1[012]|[1-9]):[0-5][0-9](\s)?(\?i)(am|pm)/)

この正規表現は、「1:00am」、「1:00 am」、「1:00 AM」に一致する必要があります</p>

どこが間違っていますか?

4

1 に答える 1

3

試す

"1:00 am".match(/(1[012]|[1-9]):[0-5][0-9]\s?(am|pm)/i)

大文字と小文字を区別しないフラグiは、正規表現の最後にある必要があります

于 2013-07-17T13:39:01.080 に答える