关于匹配验证码

来源:1-11 表达式分组

weixin_慕勒4393907

2020-06-14 14:33:50

老师这边用了  | 来连接两个括号的内容,

我以为[]内的元素也是或的关系,就用了

[(^\d{4}$)(^\d{6}$)]

但是对于777799的匹配结果是6个独立的数字,

请老师解释一下,为什么会这样

写回答

2回答

好帮手慕阿满

2020-06-15

同学你好,(^\d{4}$)和(^\d{6}$)分别是匹配4位数字和6位数字,将其写在一起是(^\d{4}$)(^\d{6}$)是匹配4位数字同时匹配6位,这是一个错误的写法,无法匹配。使用[]包裹,[(^\d{4}$)(^\d{6}$)]的效果是匹配单个数字,这里4和6无意义。

祝:学习愉快~

0

好帮手慕阿满

2020-06-14

同学你好,[]是定义匹配的字符范围,并不是或的意思。[(^\d{4}$)(^\d{6}$)]是匹配单个数字的意思。777799有6个数字,所以匹配结果是6个独立的数字。

祝:学习愉快~

1
heixin_慕勒4393907
h [(^\d{4}$)(^\d{6}$)] 如果只匹配了单个字符, 那这个式子中4和6分别代表了什么呢
h020-06-15
共1条回复

0 学习 · 16556 问题

查看课程