正则笔记

2019-06-11  本文已影响0人  简小园

写在前面

简单说,正则表达式就是用来安全校验的。

写法:
  1. JS风格:let re=new RegExp('\\d+', 'g');
  2. perl风格:let re=/\d+/g;
    一般用第二种
    正则

定界符

限定符用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配

元字符——[ ]

一个元字符代表一个字
[ 这里是要限制内容 ],例如:0-9,a-z,-,_等

  1. 任何一个
    /a[abc]q/ 匹配aaq,abq,acq
  2. 范围
    /[a-z]/ 匹配a-z
    /[a-z0-9]/ 匹配a-z和0-9
  3. 排除
    [^a-z] 匹配除了a-z的其他字符

量词——{ }

在正则里面,没有量词,就都是匹配一个

转义

修饰符

普通校验中,只要一部分通过就全过,所以我们要用修饰符来限制他的范围

^ 在[]里面,表示非;在[]外面,表示行首

方法

优先级

当用到 “或|” 的时候,有优先级()问题
例如:匹配0~9999

// 或
// 1位  0~9
// 2位  10~99
// 3位  100~999
// 4位  1000~9999
// /\d|[1-9]\d|[1-9]\d\d|[1-9]\d\d\d/
// /\d|[1-9]\d{1,3}/
let re=/^(\d|[1-9]\d{1,3})$/;

匹配QQ

<script>
window.onload=function (){
  let oTxt=document.getElementById('txt');
  let oBtn=document.getElementById('btn');

  oBtn.onclick=function (){
    let re=/^[1-9]\d{4,11}$/;

    if(re.test(oTxt.value)){
      alert('通过');
    }else{
      alert('不通过');
    }
  };
};
</script>

<input type="text" id="txt">
<input type="button" value="校验" id="btn">
在线正则表达式测试:http://tool.oschina.net/regex/
上一篇 下一篇

猜你喜欢

热点阅读