X

Javascript - ReplaceAll

Сегодня понадобилось поработать с текстом на клиенте, а именно нужно было делать замены символа-маски в строке. Пока символ-маска был один, все отлично работало, но когда их стало несколько, заменялось только первое вхождение..

Решением было использовать регулярные выражения, вместо вызова метода replace у строки:

function replaceAll(txt, replace, with_this) {
  return txt.replace(new RegExp(replace, 'g'),with_this);
}

Теперь вместо:

var str = 'hello world, hello world, hello world';
alert(str.replace('world', 'vasya'));

стало

var str = 'hello world, hello world, hello world';
alert(replaceAll(str, 'world', 'vasya'));

Посмотреть в работе можно на JSFiddle

Категории: JavaScript Бездна