Javascript удалить все вхождения символа в строке - PullRequest
21 голосов
/ 06 августа 2011

Я хочу удалить все символы, такие как [ или ] или & в строке iE: "[foo] & bar" -> "foo bar"

Я не хочуЧтобы вызвать заменить 3 раза, есть ли более простой способ, чем просто кодирование:

var s="[foo] & bar";

s=s.replace('[','');

s=s.replace(']','');

s=s.replace('&','');

1 Ответ

45 голосов
/ 06 августа 2011

Регулярные выражения [xkcd] (я чувствую, как он;)):

s = s.replace(/[\[\]&]+/g, '');

Ссылка:

Примечание :

Функция JavaScript replace заменяет только первое вхождение символа.Таким образом, даже ваш код не заменил бы все символы, только первый из них.Если вы хотите заменить все вхождения , вы должны использовать регулярное выражение с g lobal модификатором .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...