Регулярные выражения, формирование цены
Вариант2. Сначала удалить всё, кроме цифр и точек, а потом, с помощью trim() удалить точки из начала и из конца.$rule = array("/[^0-9.]/");
$prices = preg_replace($rule, '', $prices);
$prices = array_map(function($price) {
    return trim($price, '.');
}, $prices);
А не проще ли удалить всё, кроме цифр?$rule = array("/[^0-9]/");
$prices = preg_replace($rule, '', $prices);