此:PHP undertsanding貪婪與nongreedy匹配
preg_match('~foo(.*?)(bar)?~','foo bar',$m);
給了我這樣的:
Array
(
[0] => foo
[1] =>
)
我有點糊塗了這一點。我得到那個組1給我一個空的字符串,因爲這是一個懶惰的匹配。但不應該(bar)?
貪婪,因此給我捕獲組2?
似乎是合理的,我認爲我應該是獲得是
Array
(
[0] => foo
[1] =>
[2] => bar
)
其中[1]
是一個空間。然而..這沒有發生。爲什麼?
**焦點話題:**請將您的名字改爲'mysqli_noobie ...'。瞭解[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/mysqli ) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://j.mp/PoWehJ)。 – HamZa
@HamZa這讓我輕笑! – IMSoP
如果它按照您期望的方式工作,[0]實際上就是「富吧」。 [0]是完全匹配。 –