У нас есть строка:
let str = `йц3уке рпар фыв3йцу иа яы1у й1ыс ыв4 аватц`
Мы хотим удалить из этой строки символы «й«, «3» и «ц«. Как это сделать?
Удаление определённых символов строки через регулярное выражение в JavaScript
Мы можем литерально записать наше регулярное выражение и передать его в метод replace(), который работает со всеми экземплярами строк — объектами String.
str.replace(/[й3ц]/g, '')
Результат работы:
Мы используем глобальный флаг регулярного выражения, чтобы проводить сопоставления по всей строке.
Мы используем класс символа, в который помещаем искомые символы. Если любой из символов будет найден в строке, тогда он заменится на пустую строку.
Внимание! Регулярные выражения имеют свой синтаксис написания. Это значит, что есть несколько символов, которые нужно экранировать при сопоставлениях.
Экранирование делается следующим образом. Сначала ставим обратный слеш, а затем пишем символ который может быть частью синтаксиса шаблона регулярного выражения.
Простыми словами. Если тебе надо удалить из строки все виды квадратных скобок, то в класс символа тебе нужно положить это «\[\]».
Пример:
let str3 = `[йц3уке [[рпар фы[[в3йцу иа яы]]1у й1ыс ыв4]] аватц]` str3.replace(/[й3ц]/g, '') '[уке [[рпар фы[[ву иа яы]]1у 1ыс ыв4]] ават]' str3.replace(/[й3ц\[\]]/g, '') 'уке рпар фыву иа яы1у 1ыс ыв4 ават'
В общем задача сводится к тому, чтобы объяснить среде выполнения кода, что у тебя искомый символ, а что является частью синтаксиса шаблона регулярного выражения.
Стало быть в конструкции класса символа нам могут помешать только искомые символы квадратных скобок, которые мы хотим удалить.
Если тебе надо удалить из строки все виды круглых скобок, то в класс символа тебе можно положить это «\(\)», а можно не положить.
Пример:
let str2 = `(йц3уке ((рпар фы((в3йцу иа яы))1у й1ыс ыв4)) аватц)` str2.replace(/[й3ц]/g, '') '(уке ((рпар фы((ву иа яы))1у 1ыс ыв4)) ават)' str2.replace(/[й3ц\(\)]/g, '') 'уке рпар фыву иа яы1у 1ыс ыв4 ават'
С экранами или без, ситуация не измениться в этом конкретном случае.
Информационные ссылки
Стандарт ECMAScript — https://tc39.es/ecma262/multipage/
Стандарт ECMAScript — Раздел «RegExp (Regular Expression) Objects» — https://tc39.es/ecma262/multipage/text-processing.html#sec-regexp-regular-expression-objects