Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Замена символов


Автор: Rodman 6.8.2010, 17:03
Дароф

средствами javascript необходимо найти и заменить все вхождения <подстрока> в <строка>
нюансы - должна быть возможность этим методом менять отдельные символы, такие как "+", "&", "\", " ' "

а то этот вариант на + ругается
Код

value = value.replace(new RegExp("+", 'gi'), "PLUS");



идеальный вариант регулярными выражениями, но я не знаю как.

подскажите метод плиз

Сенкс

Автор: patap 6.8.2010, 17:27
не знаю правильно ли понял условия...
Код

function replacer(match) {
  var res = '';
  switch (match) {
    case "'": res = '[quote]'; break;
    case "+": res = '[plus]'; break;
    case "&": res = '[ampersand]'; break;
    case "\\": res = '[slash]'; break;
  }
  return res;
}

var value = "asdgasdg + adgasd& asdfasdf'asdfasdfas'asdfas'+adsasdf&sdasd";
value = value.replace(new RegExp("([\+&\'])", 'gi'), replacer);
alert(value);

Автор: smartov 6.8.2010, 17:46
Rodman, всё верно сделал, но + - спецсимвол. Его надо было экранировать \+

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)