- PHP code
$a = '<b>aaa</b><b>bbb</b><b>ccc</b>'; $pattern1 = '/<b>.*?<\/b>/'; $pattern2 = '/^<b>.*?<\/b>$/';
用$pattern1和$pattern2与$a进行匹对,第一个能匹配出'<b>aaa</b>'、'<b>bbb</b>'、'<b>ccc</b>'这三个
但是用$pattern2只能匹对出'<b>aaa</b><b>bbb</b><b>ccc</b>',也就是.*?的贪婪模式没起作用,这是为什么???
谢谢!
------解决方案--------------------
因为你加了结尾符$ 所以它就一直匹配到字符串末尾。
即使去掉了$ 也只能匹配第一个<b>aaa</b>,因为你加了 ^