我想知道是否有一种简单的方法可以在表单文本字段上设置此验证,而无需创建自定义指令。
我需要验证{minlength: 2, maxlength: 10}
,用户可以输入 的任意组合[A-Z0-9\s]
,但只有数量A-Z0-9
会达到最小和最大计数。
这可能吗?
我在想也许使用 ng-pattern 和一些神奇的正则表达式可能能够解决这个问题。如果 ng-pattern 匹配失败,只需要一条错误消息即可触发。
我想知道是否有一种简单的方法可以在表单文本字段上设置此验证,而无需创建自定义指令。
我需要验证{minlength: 2, maxlength: 10}
,用户可以输入 的任意组合[A-Z0-9\s]
,但只有数量A-Z0-9
会达到最小和最大计数。
这可能吗?
我在想也许使用 ng-pattern 和一些神奇的正则表达式可能能够解决这个问题。如果 ng-pattern 匹配失败,只需要一条错误消息即可触发。
正则表达式^\s*(?:[A-Z0-9]\s*){2,10}$
将给出您所要求的。它分解为:
^\s* - start with 0 or more white space characters
[A-Z0-9] - then one of A-Z or 0-9
\s* - then any number of additional
white space chars (including 0)
(?: ){2,10} - repeat all that 2-10 times
\s*$ - and allow trailing white space
编辑:更新为使用非捕获组(我没有意识到ngPattern
支持)。