var str = "Не путайте Яндекс.Деньги с Гоголь-Моголем"; str = str.replace(/([-\s.]?\S{5})(\S+?)(?=[-\s.]|$)/g, function(a, b, c) { return b + c.replace(/./g, "*") }) alert(str)