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 回答