贪婪匹配与非贪婪匹配

(1)贪婪匹配

默认情况下,正则表达式使用最长匹配原则(也叫贪婪匹配原则)。

例如:要将"zoom"中匹配"zo?"的部 分替换成"r",替换的的结果是"rom"。如果要将"zoom"中匹配"zo*"   的部分替换成"r",替换后的结果是"rm"。

(2)非贪婪匹配

当字符?紧随其他限定符(*、+、?、{n}、{n,}、{n,m})之后时,匹配模式变成了最短匹配原则(也 叫非贪婪匹配原则)。

例如:在字符串"fooood"中,"fo+?"只匹配"fo"部分,而"fo+"匹配"foooo部分。

编程中如何区分两种模式

默认是贪婪模式;在量词后面直接加上一个问号?就是非贪婪模式。   

下面的都是量词:                       

{m,n}:m到n个      

*:任意多个      

+:一个到多个      

?:0或一个

posted @   小马学编程  阅读(461)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
点击右上角即可分享
微信分享提示