ng-pattern for angularjs错误的行为

时间:2014-04-07 15:30:17

标签: javascript regex angularjs

我正在尝试使用ng-pattern但它会引发错误。我想用下面的模式验证持续时间:

((?:(?:[0-1][0-9])|(?:[2][0-3])|(?:[0-9])):(?:[0-5][0-9])(?::[0-5][0-9])?(?:\\s?(?:am|AM|pm|PM))?)

但我有这个错误:

  

Lexer错误:表达式[((?:(?:[0-1] [0-9])|(?:[2] [0-3])中第76-76行[]的意外下一个字符|(?:[0-9])):(:[0-5] [0-9])(:: [0-5] [0-9])(:\ S(?????? :?是| AM | PM | PM))]

似乎我有反斜杠的问题,但我知道如果我想逃避斜线,我必须做两个反斜杠" \"。 angularjs的版本是1.2.rc2

1 个答案:

答案 0 :(得分:1)

你实际上正在逃离一个白色空间角色。 \s是正则表达式中的空格字符,因此通过执行\\s您将转义空格表达式,因此您正在搜索斜杠后跟s:\s < / p>

你可能需要的是一个额外的关闭括号......