Почему replace не заменяет подстроку?
Замените на: new RegExp("&&-img_1-&&", "g");
RegExp выражение не нужно обрамлять в кавычки.var regexp = new RegExp(/&&-img_1-&&/g);
console.log('&&-img_1-&&'.replace(regexp, 'img'));
Для использования переменной в регэкспе:var myNumber = 2;
var myVar = '&&-img_' + myNumber + '-&&';
var regexp = new RegExp(myVar, 'g');
console.log('&&-img_2-&&'.replace(regexp, 'img'));
Но лучше использовать всю мощь регулярок вот так, если у вас задача всегда 1 цифра в строке:var regexp = new RegExp(/&&-img_\d-&&/g);