js正则,这点儿就够用了

2018-04-19 阅读 1527 收藏 4 原链:segmentfault.com
分享到:

前端必备图书《GitHub入门与实践》 >> >> 

1、i /[0-9]/i,模糊匹配,不区分大小写,但只匹配一次; 2、g /[0-9]/i,全部匹配,区分大小写;同一正则重复使用test时,若上一个为true,lastIndex会保留作为下一次test的起始位置,bi如:r=/a/g;r.test(‘ab’)//true; r.test(‘ab’)//false; 3、m /[0-9]/i,换行匹配,区分大小写,一般用来匹配每行的首尾; 4、w /w/g,匹配数字,字母,下划线;W:匹配非数字、字母、下划线; 5、s /s/g,匹配空格;S:匹配非空格; 6、d /d/g,匹配数字[0-9];D:匹配非数字; 7、b /b/g,匹配单词(字母,数组,下划线)边界;B:匹配非单词边界; 8、r /r/g,匹配回车符; 9、n /n/g,匹配换行符; 10、n* 匹配该字符的一个或多个; 11、n+ 匹配该字符的一个或多个; 12、n? 匹配该字符的0个或一个; 13、n{X}匹配该字符的X个n; 14、n{X,}匹配至少x个n; 15、n{X,Y}匹配至少X个,最多Y个;会先匹配少的; 16、[0-9]匹配一个任意数字; 17、[a-z]匹配一个任意小写字母; 18、[A-Z]匹配一个任意大写字母; 19、[A-z]匹配一个任意字母(不区分大小写);

匹配一个url地址; 匹配非负整数:re=/^d+$/; 匹配整数 :re=/^-?d+$/; 匹配负整数 :re=/^-d+$/; 匹配非负数 :re=/^[0-9]+.?[0-9]$/; 匹配负数 :re=/^-[0-9]+.?[0-9]$/; 匹配8-10位(首位为字母数字或下划线):re=/^w+$/; 匹配汉子:re=/^[u4e00-u9fa5]{0,}$/; 匹配邮箱:/^w+([-.]?w+)@w([-.]w+)(.w+)+$/ 去除关键字:re=/xx|ww|ss/g; str.replace(re,(v)=>{return Array(v.length+1).join(’’)}) 统计关键字出现的次数: let middleObject={}; str.replace(re,v=>{middleObject[v]?middleObject[v]++:middleObject[v]=1}) return middleObject;

回到顶部