HTML
<form novalidate class="css-form">
username <input type="text"
ng-pattern="/^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@('@')$!%*#?&])[A-Za-z\d$@('@')$!%*#?&]{8,20}$/" ng-model="user.email" required /><br />
</form>
以上图案适用于以下符号
@ # $ % & ! *
但我想允许所有特殊字符,如
{ } [ ] < > ( ) ^ + - = ; : ' " / \ |
如何在该模式中包含适用于密码的所有特殊字符?
答案 0 :(得分:2)
使用以下ng-pattern
:
ng-pattern="/^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@('@')$!%*#?&{}[\]<>()^+=;:'"/\\|-])[A-Za-z\d$@('@')$!%*#?&{}[\]<>()^+=;:'"/\\|-]{8,20}$/"
请注意,\
和]
在带有\
的字符类中进行转义,双引号表示为"
HTML实体。连字符在字符类结束时不需要转义 。
请参阅updated plunkr。
答案 1 :(得分:0)
通过&#34; \&#34;转义特殊符号每个特殊符号前的字符。