js正则全攻略

js正则全攻略

  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(’’)})统计关键字出现的次数:letmiddleObject={};str.replace(re,v=>{middleObject[v]?middleObject[v]++:middleObject[v]=1})return middleObject;

js正则全攻略


分享到:


相關文章: