В регэкспах в квадратных скобках не обязательно эскейпировать точку, твоя версия неичем от версии топикстартера не отличается =)
Плюс такая фигня:
$test = 'Версия 1.2.3. тарам пам пам. Пурурум 12. Тыщ тададыщ 2010. Тара-ра 1.4 2009 тада.';
// моя версия:
preg_match_all('/(\d+\.){1,}(\d+)/', $t, $pockets);
var_dump($pockets[0]);
/*
array(2) {
[0]=>
string(5) "1.2.3"
[1]=>
string(3) "1.4"
}
*/
// дуд:
preg_match_all('#[0-9\.]{3,9}#', $t, $pockets);
var_dump($pockets[0]);
/*
array(5) {
[0]=>
string(6) "1.2.3."
[1]=>
string(3) "12."
[2]=>
string(5) "2010."
[3]=>
string(3) "1.4"
[4]=>
string(4) "2009"
}
*/
// изначальная:
preg_match_all('#[0-9.]{3,9}#', $t, $pockets);
var_dump($pockets[0]);
/*
array(5) {
[0]=>
string(6) "1.2.3."
[1]=>
string(3) "12."
[2]=>
string(5) "2010."
[3]=>
string(3) "1.4"
[4]=>
string(4) "2009"
}
*/
Work, buy, consume, die