關於正則的懶惰模式和貪婪模式

懶惰模式和貪婪模式,從字面上理解,就是一個很懶一個很貪。

在寫法上就多一個問號

<?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);
}

得到如下結果,貪婪模式會匹配的儘可能長,而懶惰模式遇到即匹配

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章