正则中的()、[]、{}

() 代表分组
分组(子项)
用小括号表示分组

可以提权: (1+1) * 5

从左往右来数,有几个()就有几个分组

/(\d+)\D+(((\d)+)((\D))+)(\d+)/

在replace中,有几个分组,$0后面的参数就是这几个分组的值

当分组和形参对应完之后,又是index、input、undefined

注意:
在分组中,如果分组的后面直接加了量词,那么结果为量词的终点位置。

如:
let str = '2018.--/11---..5';
str.replace(/((\d+)+)\D+(\d+)\D+(\d+)/,$0,$1,$2)
$1 是2018
$2 ((\d)+)是8

 

[] 中只代表一个

数字0-9

字母:a-z 97-122

大写字母:A-Z 65-90

大写小写的范围: [A-Za-z]
如果要用匹配18-110以内的数字
( /^1[89]$|^[2-9][0-9]$|^10[0-9]$|^110$/).test(string);
  (/^((1[89])|([2-9][0-9])|(10[0-9])|(110))$/.test(string);
{} 量词的范围

{n,m}
{0,1} == ? 最小没有最大1个

{1,} == + 最小1个最多不限

{1,3} 最少1个,最多3个

{0,} * 最小没有,最多无限

{9} 最大最小都是9

 

转载于:https://www.cnblogs.com/Allisson/p/9948753.html

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值