我有这样的模式
<input name="ip" ng-pattern="/^http:\/\/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:[0-9]{4,5}/" class="form-control full-width text-right" type="text" ng-model="resource.ip"/>
最后一部分{4,5}至少为4且不超过5.但是当我在结尾处键入超过5个整数时,表单不会更改为ng-invalid
知道为什么我的输入允许超过5个字符?
答案 0 :(得分:2)
只需添加$
即可定义匹配结束。
^http:\/\/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:[0-9]{4,5}$
来自参考&gt; Archors&gt;端:
匹配字符串的结尾,如果启用了多行标记(m),则匹配行的结尾。这匹配一个位置,而不是一个角色。