正则表达式:密码必须包含大写字母 、数字、 特殊字符(四种里至少三种,且至少8位)
写法一:
/ ( ( ^ ( ? = . *[ a- z] ) ( ? = . *[ A- Z] ) ( ? = . *\W) [ \da- zA- Z\W] { 8 , 16 } $) | ( ^ ( ? = . *\d) ( ? = . *[ A- Z] ) ( ? = . *\W) [ \da- zA- Z\W] { 8 , 16 } $) | ( ^ ( ? = . *\d) ( ? = . *[ a- z] ) ( ? = . *\W) [ \da- zA- Z\W] { 8 , 16 } $) | ( ^ ( ? = . *\d) ( ? = . *[ a- z] ) ( ? = . *[ A- Z] ) [ \da- zA- Z\W] { 8 , } $) ) /
写法二:
/ ^ ( ? ! [ a- zA- Z] + $) ( ? ! [ A- Z0- 9 ] + $) ( ? ! [ A- Z\W_] + $) ( ? ! [ a- z0- 9 ] + $) ( ? ! [ a- z\W_] + $) ( ? ! [ 0 - 9 \W_] + $) [ a- zA- Z0- 9 \W_] { 8 , } $/
正则表达式:密码必须包含大写字母、数字、特殊字符且至少8位(验证级别高)
^ ( ? ! [ A- Za- z0- 9 ] + $) ( ? ! [ a- z0- 9 \\W] + $) ( ? ! [ A- Za- z\\W] + $) ( ? ! [ A- Z0- 9 \\W] + $) [ a- zA- Z0- 9 \\W] { 8 , 20 } $
使用语法
js写法示例:
var regexp = new RegExp ( '^(?![A-Za-z0-9]+$)(?![a-z0-9\\W]+$)(?![A-Za-z\\W]+$)(?![A-Z0-9\\W]+$)[a-zA-Z0-9\\W]{8,20}$' ) ;
var newPwd = 'AAaa123@@' ;
if ( ) {
console. log ( '验证通过' ) ;
} else {
console. log ( '验证不通过' ) ;
}
java 写法示例:
String regexp = "^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\\W_]+$)(?![a-z0-9]+$)(?![a-z\\W_]+$)(?![0-9\\W_]+$)[a-zA-Z0-9\\W_]{8,16}$" ;
if ( "AAaa1234" . matches ( PW_PATTERN) ) {
System. out. println ( "匹配成功!" ) ;
} else {
System. out. println ( "匹配失败!" ) ;
}