正则表达式中贪婪模式与非贪婪模式有什么区别
发表于:2023-03-26 作者:安全数据网编辑
编辑最后更新 2023年03月26日,正则表达式中贪婪模式与非贪婪模式有什么区别?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。什么是正则表达式的贪婪与非贪婪匹配如:Strin
正则表达式中贪婪模式与非贪婪模式有什么区别?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
什么是正则表达式的贪婪与非贪婪匹配
如:String str="abcaxc";
Patter p="ab*c";
贪婪匹配:正则表达式一般趋向于最大长度匹配,也就是所谓的贪婪匹配。如上面使用模式p匹配字符串str,结果就是匹配到:abcaxc(ab*c)。
非贪婪匹配:就是匹配到结果就好,就少的匹配字符。如上面使用模式p匹配字符串str,结果就是匹配到:abc(ab*c)。
下面通过实例代码看下正则表达式的贪婪模式与非贪婪模式,具体内容如下所示:
贪婪模式:能匹配的最大部分
s = "This is a number 234-235-22-4223" r = re.match(r"(.+)(\d+-\d+-\d+-\d+",s)r.groups()("This is a number 23","4-235-22-4223")
贪婪模式就是".+"中的+会一直查找到最后一个符合条件的字符,所以上述代码中最前面的两个数字在提取数字是没有被提取到
非贪婪模式:匹配越少越好
s = "This is a number 234-235-22-4223" r = re.match(r"(.+?)(\d+-\d+-\d+-\d+",s)r.groups()("This is a number ","234-235-22-4223")
非贪婪模式就是在".+?"会匹配到第一个符合条件的字符就停止
看完上述内容,你们掌握正则表达式中贪婪模式与非贪婪模式有什么区别的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
c语言网络技术和编程语言总结
c语言对应的三级考试网络技术
网站服务器后台如何加防护密码
c语言软件开发步骤
c语言中网络技术知识点
服务器对权限提升的防护措施
怎么在阿里云租服务器
黑苹果能做web服务器吗
c语言和网络技术哪个好考
云服务器2核4G是什么性能
网络安全应急区域联盟有哪些
刀片式服务器 机架
安徽省网络安全市场空间
app软件开发节点图
嵌入式软件开发项目管理
数据库实现信息交互专业话语
数据库服务端客户端
香肠派对为什么进不了服务器
河南宏政网络技术有限公司
郑州行业软件开发公司
宿舍管理数据库的设计
洛阳哪里有计算机网络技术
汉中移动网络技术闫栋
GEE协议服务器
数据库数字代码
网络安全写字
江西标准机架服务器生产商
成都软件开发培训机构招生技巧
数据库管理系统崩溃和停电
工业园区运营网络技术要多少钱
数据库 查询 日志记录
服务器支持备份
ibfd数据库
数据库的默认存储引擎是什么
数据库查询字段合并
ecs云服务器 绑定域名
互联网科技视频竖屏
erp数据库的大小
网络安全和游戏开发
笛卡尔积在数据库中的用法