У меня получилось чуть больше, чем регулярка... Попробуйте :)
function formatIt(s) {
var s2 = (""+s.substr(s.length - 9)).replace(/\D/g, '');
var m = s2.match(/^(\d{2})(\d{3})(\d{2})(\d{2})$/);
return (!m) ? null : m[1] + " " + m[2] + "-" + m[3] + "-" + m[4];
}