Demath,
там рекурсивная функция, пофиг сколько пробелов
я вот ещё костыль придумал:
var str="word word 1234567 more words 12345678.12345 and 123456 and 1234567890.1234567 some word";
alert( str.split('').reverse().join('').replace( /(\d\d\d)(?!\d*\.|\D)/g, '$1 ' ).split('').reverse().join('') );
вся проблема в том, что js не поддерживает заглядывание назад в регулярках.
рони,
это офигенно! я вообще забыл, что можно функцию передавать вторым параметром!