pikko, оно разделяет разряды только целых или только дробных.
Получилось вторым
replace удалять пробелы в дробных частях после работы первого
replace )
если в дробной части не более 6-ти цифр.
var str = "940451226.45678++25287++9451226++25287.15875";
alert( str.replace( /(\d)(?=(\d{3})+([^\d]|$))/g, '$1 ' ).replace( /(\.\d+) (\d+)/g, '$1$2' ) );