一般情况下,正则表达式的匹配是贪婪模式的,比如下面这个例子:
字符串:....src="http://www.bloghome.cn/1.mp3" type="application/x-mplayer2" ....
要求的结果:http://www.bloghome.cn/1.mp3
如果匹配表达式写为:/src="(.*)"/,则得不到正确的结果,因为最后一个双引号的匹配是贪婪模式的。
解决办法:匹配表达式写为:
/src="(.*)".?/
上面表达式中,".?是非贪婪模式匹配。也就是说,只要在一个字符后面跟上限定个数的特殊字符,匹配就是非贪婪模式了。
php正则表达式中的非贪婪模式匹配
2020-07-12 17:24正则表达式教程网 正则表达式
一般情况下,正则表达式的匹配是贪婪模式的,如果匹配表达式写为:/src="(.*)"/,则得不到正确的结果,因为最后一个双引号的匹配是贪婪模式的。
延伸 · 阅读
- 2022-03-10简单谈谈centos7中配置php
- 2022-03-10Python全栈之正则表达式
- 2022-03-06Ubuntu14.04服务器环境下配置PHP7.0+Apache2+Mysql5.7的方
- 2022-03-06CentOS中的正则表达式
- 2022-03-06详解Android过滤emoji表情正则表达式
- 2022-03-05centos yum php 7.x 无需删除升级的方法
- 正则表达式
正则在FireFox和IE下使用test的不同
今天同事遇到这样的问题,查明原因.记下 由于FireForx和IE的执行javascript的引擎不同,所以会有些不同。以下的例子...
- 正则表达式
正则表达式之零宽断言实例详解【基于PHP】
这篇文章主要介绍了正则表达式之零宽断言,简单介绍了零宽断言的概念、分类及php实现技巧与相关注意事项,需要的朋友可以参考下...
- 正则表达式
共享日常收集JS正则表达式(JavaScript regular expression)
这篇文章给大家介绍小编日常收集的js正则表达式,有需要的朋友可以参考下 ...
- 正则表达式
用正则实现提取代码内容的代码
研究了一个下午,没有头绪,来论坛求助,老ID丢了!重新注册了一个!=。=! 我想用javascript正则提取asp代码中SQL行的表达式但是写来写去都不行,各位辛苦帮...
- 正则表达式
正则表达式截取字符串的方法技巧
这篇文章主要介绍了正则表达式截取字符串的方法技巧,需要的朋友可以参考下...
- 正则表达式
最严谨的校验email地址的正则表达式及各种语言对应版
这篇文章主要介绍了最严谨的校验email地址的正则表达式及各种语言对应版,本文给出通用、Python、Javascript、PHP、Perl / Ruby、Perl等版本的最严谨的表达式写法...
- 正则表达式
js 正则学习小记之匹配字符串字面量优化篇
昨天在《js 正则学习小记之匹配字符串字面量》谈到 /"(?:\\.|[^"])*"/ 是个不错的表达式,因为可以满足我们的要求,所以这个表达式可用,但不一定是最好的...
- 正则表达式
Java正则表达式里隐藏的陷阱
正则表达式是一个很方便的匹配符号,但要实现这么复杂,功能如此强大的匹配语法,就必须要有一套算法来实现,而实现这套算法的东西就叫做正则表达...