正则边界 和 量词

正则表达式

有一些普通字符元字符组成,普通字符就是字母和数字,元字符具有特殊意义的字符,常用于表单验证

正则边界(重点)

^会匹配行或者字符串的起始位置

:^在[]中才表示非!这里表示开始;

$会匹配行或字符串的结尾位置

^$在一起,表示必须是这个(精确匹配)

console.log(/^abc$/.test("abc"));      //true;
console.log(/^abc$/.test("a"));        //false;
console.log(/^abc$/.test("abcabc"));   //false;
量词(重点)

(多个字母,重复最后一个)

*    重复零次或更多    (>=0)

+    重复一次或更多次    ( >=1)

?    重复零次或一次    (0 || 1)

{}    重复多少次的意思    可以有多少个


*    重复零次或更多    (>=0)

console.log(/^a*$/.test("b"));        //false;
console.log(/^a*$/.test(""));         //true;
console.log(/^a*$/.test("a"));        //true;
console.log(/^a*$/.test("aa"));       //true;
console.log(/^a*$/.test("aaab"));     //false;

+    重复一次或更多次    ( >=1)

console.log(/^a+$/.test("b"));        //false; 
console.log(/^a+$/.test(""));         //false;
console.log(/^a+$/.test("a"));        //true;
console.log(/^a+$/.test("aa"));       //true;
console.log(/^a+$/.test("aaab"));     //false;

?    重复零次或一次    (0 || 1)

console.log(/^a?$/.test("b"));        //false;
console.log(/^a?$/.test(""));         //true;
console.log(/^a?$/.test("a"));        //true;
console.log(/^a?$/.test("aa"));       //false;
console.log(/^a?$/.test("aaab"));     //false;

{}    重复多少次的意思    可以有多少个

    {n}    一个参数,循环n次;
    {n,}    一个参数,循环>=n次;
    {n,m}    一个参数,循环n次到m次;
console.log(/^a{1}$/.test("a"));            //true;
console.log(/^a{1,}$/.test("aa"));          //true;
console.log(/^a{1,5}$/.test("aaaa"));       //true;
console.log(/^a{1,5}$/.test("aaaaaa"));     //false;

括号提高运算级, | 前后有一个符合就可以

console.log(/(abc)|(xyz)/.test("abc"));        //true;
console.log(/(abc)|(xyz)/.test("xyz"));        //true;
console.log(/(abc)|(xyz)/.test("abcd"));       //true;
console.log(/(abc)|(xyz)/.test("ab"));         //false;
console.log(/(abc)|(xyz)/.test("xy"));         //false;
console.log(/(abc)|(xyz)/.test("abxy"));       //false;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值