Подтвердить что ты не робот

Удаление символов из строки

Какими разными способами я могу удалить символы из строки в JavaScript?

4b9b3361

Ответ 1

Использование replace() с регулярными выражениями является наиболее гибким/мощным. Это также единственный способ глобально заменить каждый экземпляр шаблона поиска в JavaScript. Необременимый вариант replace() заменит только первый экземпляр.

Например:

var str = "foo gar gaz";

// returns: "foo bar gaz"
str.replace('g', 'b');

// returns: "foo bar baz"
str = str.replace(/g/gi, 'b');

В последнем примере конечный /gi указывает на нечувствительность к регистру и глобальную замену (это означает, что не только первый экземпляр должен быть заменен), что обычно требуется, когда вы заменяете строки.

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

var str = "foo bar baz";

// returns: "foo r z"
str.replace(/ba/gi, '');

Ответ 2

Здесь oneliner, который удаляет символы LIST (более одного раза) - например, удалите +,-, ,(,) с номера телефона:

var str = "+(48) 123-456-789".replace(/[-+()\s]/g, '');

значение результата str: "48123456789"

Мы используем регулярное выражение [-+()\s], где помещаем нежелательные символы между [ и ] (\s является escape-символом пробела - для получения дополнительной информации о символах символов google в regexp)

Ответ 3

Вы можете использовать replace.

Ответ 4

Я знаю, что это старо, но если вы выполните разделение, то присоедините его, он удалит все вхождения определенного символа, т.е.:

var str = theText.split('A').join('')

удалит все вхождения "A" из строки, очевидно, это не чувствительно к регистру

Ответ 5

Другим методом, о котором никто не говорил, является метод substr для создания строк из другой строки... это полезно, если ваша строка имеет определенную длину, а символы, которые вы удаляете, находятся на любом конце строки..or внутри некоторого "статического измерения" строки.