Функции и Формулы

Подстановка заданной части текста в ячейке, функция SUBSTITUTE

Функция SUBSTITUTE в Google таблице

Как и в таблицах Excel, в Google таблицах функция SUBSTITUTE (ПОДСТАВИТЬ) заменяет один определенный текст на другой в пределах одной выбранной ячейки.

 =SUBSTITUTE(text_to_search, search_for, replace_with, [occurrence_number])
 =ПОДСТАВИТЬ(текст; искать; замена; [номер_соответствия])
  • Text_to_search (текст) — текст; ссылка на ячейку; значение функции, в котором производится поиск и замена.
  • Search_for (искать) — элемент текста, который нужно найти в text_to_search и заменить на replace_with. По аргументу search_for находятся не только слова, но и их части; например, если нужно заменить слово «маг», то замена произойдет и в слове «бумага».
  • Replace_with (замена) — определенный текст, который будет вставляться вместо старого элемента текста search_for.
  • [Occurrence_number (номер_соответствия)] — необязательный аргумент. Порядковый номер вхождения search_for в тексте text_to_search, которое нужно заменить на replace_with. По умолчанию заменяются все вхождения search_for, но если указан [occurrence_number], происходит замена элементов текста только с этим порядковым номером.

Функция SUBSTITUTE (ПОДСТАВИТЬ) чувствительна к регистру, в последнем примере мы указали «саша» с маленькой буквы и формула ничего не изменила, так как в искомом тексте нет совпадений с таким элементом.

В ситуациях, когда элемент текста, который мы хотим заменить входит в состав других слов — нужно указывать точный порядок [occurrence_number], чтобы не случилась подстановка в тех словах, где нам не этого не нужно.

Пример применения функции SUBSTITUTE (ПОДСТАВИТЬ)

Рассмотрим пример реального применения функции SUBSTITUTE в гугл таблице при решении задачи с удалением ненужных знаков препинания ( «!» ; «,» ; «.» ; «;» ; «:» ; «»»») из определенного текста, чтобы сосчитать количество символов в ячейке по заданным в задаче правилам.

=IF(C2="";0;LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(C2;"!";"");",";"");".";"");";";"");":";"");"""";"")))

Формула с повторяющемся циклом подстановки, где функции вложены друг в друга (как матрешка) и в конце выполняется условие отображения данного результата через функцию IF (ЕСЛИ).

В качестве аргумента replace_with мы ничего не передаем, в этом случае функции нечего подставить вместо выделенного параметра search_for и она просто удаляет ненужные нам знаки препинания, отображая текст для дальнейшего пересчета оставшихся после (подстановки) удаления символов.

Статьи по теме