Функція REGEXREPLACE

Застосовується до
Excel для Microsoft 365 Excel для Microsoft 365 для Mac

Функція REGEXREPLACE дає змогу замінити текст із рядка на інший рядок на основі вказаного регулярного виразу ("regex").

Синтаксис

Функція REGEXREPLACE замінює рядки в межах наданого тексту , який відповідає шаблону з заміною.

Синтаксис функції REGEXTRACT:

REGEXREPLACE(текст;візерунок;заміна;[екземпляр];[case_sensitivity])

Аргумент Опис
text
(обов’язковий)
Текст або посилання на клітинку з текстом, у якому потрібно замінити рядки.
візерунок
(обов’язковий)
Регулярний вираз ("regex"), який описує шаблон тексту, який потрібно замінити.
Заміна
(обов’язковий)
Текст, який потрібно замінити на екземпляри візерунка.
Виникнення Визначає, який екземпляр візерунка потрібно замінити. За замовчуванням екземпляр становить 0, що замінює всі екземпляри. Від'ємне число замінює цей екземпляр пошуком із кінця.
case_sensitivity Визначає, чи має збіг враховувати регістр. За замовчуванням збіг враховується з урахуванням регістра. Введіть одну з таких дій:
0: З урахуванням регістра
1: Нечутливий до регістра

Примітка.

Під час написання шаблонів regex можна використовувати символи під назвою "маркери", які відповідають різним символам. Ось кілька простих маркерів для довідки:

  • "[0-9]": будь-яка числова цифра
  • "[a-z]": символ у діапазоні від а до я
  • ".": будь-який символ
  • "a": символ "a"
  • "a*": нуль або більше "a"
  • "a+": один або кілька "a"
  • Усі регулярні вирази для цієї функції, а також REGEXTEST і REGEXEXTRACT використовують "смак" PCRE2 regex.
  • REGEXEXTRACT завжди повертає текстові значення. Ці результати можна перетворити на число за допомогою функції VALUE.

Приклади

Скопіюйте дані прикладу та вставте їх у клітинку A1 нового аркуша Excel. За потреби можна змінити ширину стовпців, щоб відобразити всі дані.

Приклад 1

Використання REGEXREPLACE для анонімізації номерів телефонів, замінивши перші 3 цифри на ***, використовуючи шаблон

"[0-9]+-"

Дані.
Соня Різ(378) 555-4195
Ангел Браун(878) 555-8622
Блейк Мартін (437) 555-8987
Вільям Кірбі(619) 555-4212
Avery Smith(579) 555-5658
Паркер Джонс(346) 555-0925
Ліам Малий (405) 555-0887
Холлі Різ(666) 555-1872
Формули
=REGEXREPLACE(A2;"[0-9]+-";"***-")

На знімку екрана нижче показано результат. Щоб відобразити розриви рядків у результаті, потрібно перенести текст у клітинку A4.

Використання REGEXREPLACE для заміни перших трьох цифр кожного номера телефону в змішаному тексті на *, за шаблоном [0-9]+-

Приклад 2

За допомогою функції REGEXREPLACE можна записувати групи, щоб розділяти та перевпорядковувати задані ім'я та прізвище за допомогою шаблону: "([A-Z][a-z]+)([A-Z][a-z]+)"; і заміна: "$2, $1".

Примітка: Групи записування визначаються за шаблоном із дужками "()", і на них можна посилатися замість "$n". У цьому прикладі $1 і $2 посилаються на першу та другу групи записування відповідно.

Дані.
СоняБрун
Формули
=REGEXREPLACE(A2;"([A-Z][a-z]+)([A-Z][a-z]+)";"$2; $1")

На зображенні нижче показано результати.

Використовуйте REGEXREPLACE із записами груп, щоб розділяти та перевпорядковувати задані ім'я та прізвище за допомогою шаблону: ([A-Z][a-z]+)([A-Z][a-z]+) і заміни: $2, $1