2
$str = 'My name is Michael. I am a sportsman!';
preg_match('|My name is (.*?)\. I am a (.*?)|', $str, $m);
print_r($m);
返回我的字符串:
Array ([0] => My name is Michael. I am a [1] => Michael [2] =>)
哪裏sportsman
?
或者,這是因爲第二部分是不貪婪,所以爲什麼錨點是需要的。如果你讓它貪婪(即'(。*)|'),它將匹配而不錨定表達式。 – Jon 2013-03-22 07:07:22
@Jon完全正確:)添加到我的答案。 – 2013-03-22 07:11:51