正则表达式中小括号、中括号、大括号的作用

本文详细介绍了正则表达式中的小括号()用于分组和捕获子匹配,中括号[]用于定义字符集并选择匹配字符,大括号{}用于指定匹配次数的规则。通过实例解析了每个括号在正则表达式中的具体作用和用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

匹配子项

子项:整体的正则表达式可以看做父亲,第一个小括号就是第一个子项,以此类推……

正则中小括号()的作用——分组

	var str = "abc";
    var reg = /(a)(b)(c)/;
    console.log(str.match(reg));   

结果如下:
在这里插入图片描述
注意:match方法中,若传入的正则是全局匹配,返回值不会返回子项的匹配结果。

	var str = "abc";
    var reg = /(a)(b)(c)/g;	//	使用全局匹配
    console.log(str.match(reg));   //	结果["abc"]

replace中的匹配子项:

var str = "2020-01-02";
    var reg = /(\d+)-/g;
    str.replace(reg,function (s0,s1,s2) {
        /*
         * 规定写法:
         * 第一个参数输出的内容是正则整体匹配结果
         * 从第二个参数起,有多少子项都可以打出来,子项和参数要一一对应
         * 子项打印完了之后,后面的参数就是匹配的位置
         */
        console.log(s0,s1,s2);
    });

结果:
在这里插入图片描述
子项(子模式)的作用:

​ 1 当正则比较复杂的时候,可以用()来分组。

​ 2 当需要使用到整体中部分内容的时候,可以用()来分组,并且得到分组中的内容。


正则中中括号[]的作用

​ 1 中括号表示一个整体,括号中的字符属于或者关系,匹配字符串时,只从中挑选一个来做匹配。

	var str = "abfg";
    var str2 = "abcfg";
    var str3 = "abefg";
    var reg = /ab[cde]fg/;
    console.log(reg.test(str));     //false
    console.log(reg.test(str2));    //true
    console.log(reg.test(str3));    //true

​ 2 中括号中可以给范围[0-9][a-z][A-Z]

	var str4 = "5s";
    var reg2 = /[0-9][a-z]/;
    console.log(reg2.test(str4));   //true

​ 3 中括号中可以排除一些东西

	var str5 = "a";
    var reg3 = /[^a-z]/;	//^符号表示非(除了)
    console.log(reg3.test(str5));   //false	

正则中大括号{}的作用

​ {1,5}——出现1到5次

​ {2,}——大于2次

​ {3}——等于3次

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值