正则表达式之 数据验证 与 文本替换

一、数据验证

用户名正则: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")
原文地址:https://www.cnblogs.com/abcdecsf/p/9866653.html