正则表达式(Regular Expression)★
含义:预先设定了一种字符串格式规则
创建:
普通方式: var reg=/表达式/附加参数
构造函数: var reg=new RegExp(‘表达式‘,‘附加参数‘)
符号:
^:在[]里面表示取反,在[]外面表示以XX开头
$:表示以XX结尾
[0-9]:数字
[a-z]:26个小写字母
[A-Z]:26个大写字母
\d:等同于[0-9]
\D:等同于[^0-9],表示非数字
\s:空白字符
\S:非空白字符
\w:数字,字母,下划线,等价于[A-Za-z0-9_]
.:匹配除了换行符以外的所有内容
\.:把点当成一个普通的符号看待,前面加斜杠
{3}:前一项表达式要出现3次
{2,}:前一项表达式至少出现2次
{1,3}:前一项表达式至少出现1次,最多出现3次
*:等价于{0,} 匹配前一项0次到多次
?:等价于{0,1} 不写或最多1次
+:等价于{1,} 至少写1次或多次
方法:
正则对象.test(字符串);/*返回一个boolean结果*/
字符串.match(正则对象);/*返回匹配到的内容*/
字符串.search(正则对象);/*返回匹配到的第一次出现的下标*/
附加参数:
i:忽略大小写
g:全局匹配(在search里不管用)
m:匹配换行符之后的内容
经典案例:
0-120: /^120$|^(1[0-1]|[0-9])?\d$/ 即/^120$|^1[0-1][0-9]$|^[1-9][0-9]$|^[0-9]$/
18-120: /^120$|^1[8-9]$|^(1[0-1]|[2-9])\d$/ 即/^120$|^1[8-9]}$/|^1[0-1][0-9]$|^[2-9][0-9]$/
时间: /^([0-1]\d | 2[0-3]):[0-5]\d$/ 即/^2[0-3]|[0-1][0-9]:[0-5][0-9]$/
邮箱: /^\w+@\w+\.[a-zA-Z]{2,3}$/
小例子
\n表示换行符
\r\n表示回车 换行符+回车符
页面登录和注销退出
页面01 保留账号7天

页面02 注销和游客替换成登录用户提示语

补充
ecodeURIComponent 编码
decodeURIComponent 解码
10.12学习笔记
原文:https://www.cnblogs.com/xieyankeai/p/9780425.html