JavaScript

Как удалить слово или символ из строки в JavaScript

Чтобы удалить фрагмент из строки в JavaScript, используйте replace, replaceAll или регулярное выражение. Строки в JavaScript неизменяемые: метод не меняет исходную строку, а возвращает новую. Поэтому результат нужно сохранить в переменную

Пример:

const text = "hello JavaScript";
const result = text.replace("JavaScript", "");

console.log(result); // hello

Удалить одно вхождение

replace заменяет первое совпадение:

const text = "кот и котенок";
const result = text.replace("кот", "");

console.log(result); //  и котенок

Если нужно убрать лишний пробел, можно добавить trim():

const clean = result.trim();

Удалить все вхождения

Если нужно удалить все одинаковые фрагменты, используйте replaceAll:

const text = "JS, HTML, JS, CSS";
const result = text.replaceAll("JS", "");

console.log(result); // , HTML, , CSS

После удаления может понадобиться аккуратно обработать запятые и пробелы. Удаление текста — это часто не одна операция, а чистка результата

Удалить слово из переменной result

Если у вас уже есть переменная result, присвойте ей новое значение:

let result = "Сумма: 1500 рублей";

result = result.replace(" рублей", "");

console.log(result); // Сумма: 1500

Важно: если написать только:

result.replace(" рублей", "");

переменная result не изменится. Метод вернет новую строку, но вы ее никуда не сохраните

Удалить по регулярному выражению

Регулярное выражение удобно, когда нужно удалить разные варианты:

const text = "Цена: 1 500 руб.";
const result = text.replace(/\s?руб\.?/, "");

console.log(result); // Цена: 1 500

Флаг g удаляет все совпадения:

const text = "a-b-c-d";
const result = text.replace(/-/g, "");

console.log(result); // abcd

Удалить только лишние пробелы

Иногда «удалить из строки» означает не убрать слово, а почистить пробелы:

const text = "  JavaScript   работает  ";
const result = text.trim().replace(/\s+/g, " ");

console.log(result); // JavaScript работает

trim() убирает пробелы по краям, а регулярное выражение /\s+/g заменяет несколько пробелов внутри строки на один. Это полезно при обработке имени, адреса, комментария или строки поиска

Удалить часть по позиции

Если известны индексы, можно собрать строку через slice:

const text = "ABC-123";
const result = text.slice(0, 3) + text.slice(4);

console.log(result); // ABC123

Этот способ удобен, когда нужно удалить конкретный символ по позиции, а не искать текст

Практический пример с input

<input id="text" value="Заказ #123">
<button id="button">Удалить #</button>
<p id="result"></p>

<script>
  const input = document.querySelector("#text");
  const button = document.querySelector("#button");
  const result = document.querySelector("#result");

  button.addEventListener("click", () => {
    result.textContent = input.value.replace("#", "");
  });
</script>

Так можно очищать промокоды, телефоны, суммы, технические метки и пользовательский ввод

Частые ошибки

Не сохранить результат

Строка не меняется сама. Нужно присваивание:

text = text.replace("old", "new");

Использовать replace вместо replaceAll

replace("a", "") удалит только первое a. Для всех вхождений используйте replaceAll или регулярное выражение с g

Не учитывать регистр

"JS" и "js" — разные строки. Для нечувствительного поиска используйте регулярное выражение с флагом i

Мини-задание

Создайте строку result = "Телефон: +7 (900) 123-45-67". Удалите пробелы, скобки и дефисы так, чтобы остались только Телефон:+79001234567 или только номер

Что почитать дальше по JavaScript

Если нужен общий маршрут по теме, откройте рубрику JavaScript. Для соседних задач пригодятся эти разборы:

Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные

Настройки cookie

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x