博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
正则表达式中贪婪与懒惰匹配
阅读量:7193 次
发布时间:2019-06-29

本文共 354 字,大约阅读时间需要 1 分钟。

      当正则表达式中包含能接受重复的限定符(指定数量的代码,例如*,{5,12}等)时,通常的行为是(在使整个表达式能得到匹配的前提下)匹配尽可能多的字符。如对于一段文本

This is the first line.

This is the second line.
This is the third line.

      用^[\w\W]+$ 匹配会得到整个文本段,由于Regex引擎是贪婪的,它会尽可能的匹配多的选项,知道匹配完。

     有时,我们更需要懒惰匹配,也就是匹配尽可能少的字符。前面给出的限定符都可以被转化为懒惰匹配模式,只要在它后面加上一个问号?。如同样用上面一段文本,用^[\w\W]+?$模式进行匹配,匹配到第一个马上返回,不再继续进行查找,所以得到结果:

     This is the first line.

     

转载地址:http://svtkm.baihongyu.com/

你可能感兴趣的文章
牛逼的postman,分类管理更好用
查看>>
技术栈总结及短期学习目标规划
查看>>
quick-cocos2dx 之transition.execute()的缓动效果
查看>>
Failed to resolve: com.android.support:appcompat-v7:27.0.1问题解决
查看>>
laravel 的 intervention-image 图像处理笔记(备用)
查看>>
μC/OS-II与RT-Thread对比—任务调度
查看>>
SVN升级到1.8后 Upgrade working copy
查看>>
【转】编程的智慧
查看>>
<Netty>(十五)(中级篇)reactor模式解析Netty
查看>>
【mysql优化1】表的优化与列类型选择
查看>>
MySQL中EXISTS的用法
查看>>
ELF反调试初探
查看>>
ORA-01578和ORA-26040--NOLOGGING操作引起的坏块-错误解释和解决方案(文档ID 1623284.1)...
查看>>
git 撤销修改
查看>>
git 解决冲突
查看>>
Android项目实战(三十四):蓝牙4.0 BLE 多设备连接
查看>>
使用SQL Server Management Studio 创建数据库备份作业
查看>>
为电子书包配置透明网关+缓存服务器
查看>>
鸟哥的Linux私房菜:基础学习篇 —— 第五章笔记
查看>>
Zabbix触发器函数(取前后差值)
查看>>