之间有什么区别?
(.+?)
和
(.*?)
当我在php preg_match正则表达式中使用它时?
preg_match
它们称为量词。
* 0个或多个前面的表达式
*
+ 前一个或多个表达式
+
默认情况下,量词是贪婪的,这意味着它匹配尽可能多的字符。
在?一个量词后改变行为,使这个量词“ungreedy”,意味着它会匹配尽可能少。
?
贪婪/贪婪的例子
例如,在字符串“ abab ”上
a.*b 将匹配“ abab”(preg_match_all将返回一个匹配项,即“ abab”)
a.*b
而a.*?b仅匹配开头的“ ab”(preg_match_all将返回两个匹配“ ab”)
a.*?b