Функция REGEXREPLACE

Функцията REGEXREPLACE ви позволява да заместите текст от низ с друг низ, въз основа на предоставен регулярн израз ("regex").

Синтаксис

Функцията REGEXREPLACE замества низовете в предоставения текст , които съвпадат с шаблонасъс заместване.

Синтаксисът на функцията REGEXEXTRACT е:

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

Аргумент Описание
текст
(задължително)
Текстът или препратката към клетка, съдържаща текста, в който искате да заместите низовете.
шарка
(задължително)
Регулярният израз ("регулярният израз"), който описва модела на текста, който искате да заместите.
замяна
(задължително)
Текстът, който искате да замести с шаблон.
Поява Задава кой екземпляр на шаблона искате да заместите. По подразбиране появяването е 0, което замества всички екземпляри. Това срещане се замества с отрицателно число, като се търси от края.
case_sensitivity Определя дали съвпадението прави разлика между малки и главни букви. По подразбиране съвпадението прави разлика между главни и малки букви. Въведете едно от следните неща:
0: С малки и главни букви
1: Без разлика между малки и главни букви

Забележка

Когато пишете модели на регулярни изрази, могат да се използват символи, наречени "маркери", които съвпадат с различни знаци. Ето няколко прости маркера за справка:

  • "[0-9]": произволна цифра
  • "[a-z]": знак в диапазона от А до Я
  • ".": всеки знак
  • "a": знакът "a"
  • "a*": нула или повече "a"
  • "A+": едно или повече "A"
  • Всички регулярни изрази за тази функция, както и REGEXTEST и REGEXEXTRACT , използват PCRE2 "вкуса" на регулярния израз.
  • REGEXEXTRACT винаги връща текстови стойности. Можете да преобразувате тези резултати обратно в число с помощта на функцията VALUE.

Примери

Копирайте данните от примера и ги поставете в клетка А1 на нов работен лист на Excel. Ако е необходимо, коригирайте ширините на колоните, за да видите всичките данни.

Пример 1

Използвайте REGEXREPLACE, за да анонимизирате телефонни номера, като заместите първите им 3 цифри със ***, като използвате шаблон

"[0-9]+-"

Данни
Соня Рийс(378) 555-4195
Ейнджъл Браун(878) 555-8622
Блейк Мартин(437) 555-8987
Уилям Кърби(619) 555-4212
Ейвъри Смит(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