正则表达式‘+’和‘*’的理解

https://blog.csdn.net/wl_ss/article/details/78241782

“*”元字符规定其前导字符必须在目标对象中出现零次或连续多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等价于{0,}。

“+”元字符规定其前导字符必须在目标对象中连续出现一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo","zzzooo",但不能匹配 "z"。+ 等价于 {1,}。

“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次

为什么*和+都可以匹配到zoo?为什么*匹配匹配 "zzzooo"时匹配到“z” 而 +匹配到的是“zooo”?

*表示在字母z后面连续出现零个或多个字母o的字符串相匹配。

+表示在字母z后面连续出现一个或多个字母o的字符串相匹配

1.贪婪模式匹配结果

贪婪模式,就是在整个表达式匹配成功的前提下,尽可能多的匹配,也就是所谓的“贪婪”,通俗点讲,就是看到想要的,有多少就捡多少,除非再也没有想要的了

 

2.非贪婪模式匹配结果

非贪婪模式,就是在整个表达式匹配成功的前提下,尽可能少的匹配,也就是所谓的“非贪婪”,通俗点讲,就是找到一个想要的捡起来就行了,至于还有没有没捡的就不管了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值