js学习笔记之正则

() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。(s*)表示连续空格的字符串。
[]是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[s*]表示空格或者*号。
{}一般用来表示匹配的长度,比如 s{3} 表示匹配三个空格,s{1,3}表示匹配一到三个空格。

/^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$).{8,12}$/ 包含数字、大写字母、小写字母任意两种或以上,长度为8-12的字符串
解释
?![0-9]+$ 匹配任何没有紧接数字的字符串
?![A-Z]+$ 匹配任何没有紧接大写字母的字符串
?![a-z]+$ 匹配任何没有紧接小写字母的字符串
/B(?=(d{3})+(?!d))/g 全局匹配一个位置,这个位置是非单词边界,然后后面是3的倍数个数字,然后是非数字
原文地址:https://www.cnblogs.com/nightstarsky/p/9895059.html