一、数据验证
用户名正则:4到16位(字母 数字 下划线 减号)
/^[a-zA-Z][a-zA-Z0-9_-]{4,16}$/
^匹配输入字符串的开始位置,[a-zA-Z]用户名开头必须为字母,[a-zA-Z0-9_-]余下字符可为字母 数字 下划线和减号,{3,15}限定之前的
[a-zA-Z0-9_-]至少3个字符,至多15个字符,加上开头的一个字母,和为4到16位,$为匹配输入字符串的结束位置。
;
密码强度正则:最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
/^(?=.*[a-z])(?=.*[A-Z])(?=.*d)[^]{8,20}$/
(?=exp)也叫零宽度正预测先行断言,它断言自身出现的位置的后面能匹配表达式exp,此处(?=.*[a-z])表任意字符串后有一小写字母,(?=.*[A-Z])表任意字符串后有一大写字母,(?=.*d)表任意字符串后有一数字,[^]表特殊字符。
整个正则表示8-10位字符,必须同时包含数字,小写字母,大写字母,特殊字符。
;
EMAIL正则:
/^(w+.?)*w+@(w+.)w+$/
(w+.?)开头匹配字母、数字、下划线。等价于'[A-Za-z0-9_]',随后加上一个或0个“.”
;
身份证号正则:
/d{15}|d{18}/
指15或18位纯数字;
引用:“字符描述:
^ :匹配输入的开始位置。
:将下一个字符标记为特殊字符或字面值。
* :匹配前一个字符零次或几次。
+ :匹配前一个字符一次或多次。
(pattern) 与模式匹配并记住匹配。
x|y:匹配 x 或 y。
[a-z] :表示某个范围内的字符。与指定区间内的任何字符匹配。
w :与任何单词字符匹配,包括下划线。
{n,m} 最少匹配 n 次且最多匹配 m 次
$ :匹配输入的结尾。” via vs_bug “email正则表达式”
二、文本替换
Paul ,paula ,paul ,spaul
paul replace Ringo;
replace(/(Jean)Paul/g,"$1Ringo")