关于匹配验证码

关于匹配验证码

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

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

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

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

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

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

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

祝:学习愉快~

好帮手慕阿满 2020-06-14 16:20:23

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

祝:学习愉快~

  • 提问者 weixin_慕勒4393907 #1
    [(^\d{4}$)(^\d{6}$)] 如果只匹配了单个字符, 那这个式子中4和6分别代表了什么呢
    2020-06-15 16:38:59
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师