$str = str_replace(' ', '', $string);
preg_match("#(\d+)(\.|,)?(\d+)?#", $str, $matches); // preg_match_all если много цен в одной строке
$locale = new Zend_Locale('de_AT');
$number = Zend_Locale_Format::getNumber('13.524,678',
array('locale' => $locale,
'precision' => 3)
);
print $number; // will return 13524.678