关于正则的懒惰模式和贪婪模式

Posted 爱钓鱼的程序猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于正则的懒惰模式和贪婪模式相关的知识,希望对你有一定的参考价值。

懒惰模式和贪婪模式,从字面上理解,就是一个很懒一个很贪。

在写法上就多一个问号

<?php
$str='<p>asdfasdfs</p>dsfgsdftg<p>asdfasdfs</p>sdf<p>asdfasdfs</p>sdf<p>asdfasdfs</p>';

/*贪婪模式*/
if(preg_match_all('/<p>.*<\\/p>/', $str, $m1))
	var_dump($m1);


/*懒惰模式*/
if(preg_match_all('/<p>.*?<\\/p>/', $str, $m2))
	var_dump($m2);

得到如下结果,贪婪模式会匹配的尽可能长,而懒惰模式遇到即匹配

以上是关于关于正则的懒惰模式和贪婪模式的主要内容,如果未能解决你的问题,请参考以下文章

正则 : 模式

浅谈正则表达式匹配模式—懒惰模式

浅谈正则表达式匹配模式—贪婪模式

正则表达式的贪婪和非贪婪模式

Python正则表达式

正则表达式了解一下