对密码必须包含字母,数字,特殊字符正则表达式理解

写一个必须包含字母,数字,特殊字符的正则表达式。

 const reg = /^(?=.*[0-9])(?=.*[a-zA-Z])(?=.*[^(0-9a-zA-Z)]).{8,32}$/;

// ?=  寻找当前位置后面是什么的内容。例如:?=[0-9] 寻找当前位置后面是数字0-9的内容。得到的是[0-9]前面的内容,例如A(?=[0,9])得到A
//.表示获取非换行符的内容。
//*表示0~n个 , .*就是获取不是换行符的0~n个字符
//?=.*[0-9]就是获取当前位置后面不是换行符的0-n个0-9数字

//整个表达式的意思就是:当前位置后面(.*可以有0到多个非换行字符)必须跟数字,字母,特殊字符,8-32位才能成功匹配。
原文地址:https://www.cnblogs.com/userGao/p/14167010.html