6.2.1、备选字符集/预定义字符集
备选字符集 : 规定某一位字符的备选字符列表
特点:必须且只能多选一
var str = "上海,上天,上那里去";var reg = /上[海天]/g;console.log(str.replace(reg,"**")); // **,**,上那里去了
[0-9] 一个数字[a-z] 一个小写字母[A-Z] 一个大写字母[0-9a-zA-Z] 一个数字或字母
预定义字符集:针对常用的备选字符集提供的简化符号
[0-9] \d 一位数字[0-9a-zA-Z_] \w 一位数字字母或下划线. 所有字符\s 空格,空字符,换行
var str = "_fgd56161_";var reg = /\d/g; //console.log(str.replace(reg,"*"));console.log(str.replace(/\w/g),"*");
6.2.2、量词
量词 :定字符集出现的次数
1.确定数量
{m} 只能出现m次{m,n} 大于m次小于n次{m,} 大于m次
2.不确定数量
? 一个或0个+ 1个以上* 多个或没有
var str = "hje5155";var reg = /\d+/console.log(reg.test(str)); // true
3.贪婪模式
给量词的情况下 默认取得的是最大值
var str = "5616516hello";var reg = /\d{3,6}/;console.log(str.replace(reg,"*")); // ******6hello
4.懒惰模式
var str = "5616516hello";var reg =/\d{3,6}?/;console.log(str.replace(reg,"*")); // ***6516hello
6.2.3、选择分组
1.选择 |
2.分组 ( )
var str = "哪里,哪去能发多少积分";console.log(str.replace(/哪里|能发/g,"*"));
3.转义字符 \
转义字符 遇到一些特殊的字符 需要处理可以在前面加上转义字符
var str = "\"hello"console.log(str); // "hello
6.2.4、指定匹配位置
^开头的xxx,$结尾的xxx
只要验证时,必须前加^,后加$!
^\s+ //匹配字符串开头的所有空字符\s+$ //匹配字符串结尾的所有空字符
6.2.5、非
^[a-zA-Z] 不包含字母^\d 除了数字
