Функцията REGEXREPLACE ви позволява да заместите текст от низ с друг низ на базата на подаден регулярен израз ("regex").
Синтаксис
Функцията REGEXREPLACE замества низове в предоставения текст , който съответства на модела със заместването.
Синтаксисът на функцията REGEXEXTRACT е:
REGEXREPLACE(текст; шарка; замяна; [повторение]; [case_sensitivity])
Аргумент |
Описание |
---|---|
text (задължително) |
Текстът или препратката към клетка, съдържаща текста, в който искате да заместите низовете. |
шарка (задължително) |
Регулярният израз ("regex"), който описва модела на текста, който искате да заместите. |
подмяна (задължително) |
Текстът, който искате да замести екземплярите на шарката. |
Появата |
Задава кой екземпляр на шаблона искате да заместите. По подразбиране повторението е 0, което замества всички екземпляри. Отрицателно число замества този екземпляр, като търси от края. |
case_sensitivity |
Определя дали съвпадението различава малки и главни букви. По подразбиране съвпадението различава малки и главни букви. Въведете едно от следните неща: 0: С малки и главни 1: Нечувствително към малки и главни букви |
Забележки: Когато пишете регулярен модел, могат да се използват символи, наречени "маркери", които съответстват на различни знаци. Това са някои прости маркери за справка:
-
"[0-9]": всяка цифрова цифра
-
"[a-z]": знак в диапазона от a до z
-
".": всеки знак
-
"a": знакът "a"
-
"a*": нула или повече "a"
-
"a+": един или повече "a"
-
Всички регулярни изрази за тази функция, както и REGEXTEST и REGEXEXTRACT, използват PCRE2 "вкус" на regex.
-
REGEXEXTRACT винаги връща текстови стойности. Можете да преобразувате тези резултати обратно в число с функцията VALUE.
Примери
Копирайте примерните данни и ги поставете в клетка A1 на нов работен лист на Excel. Ако е необходимо, коригирайте ширините на колоните, за да видите всичките данни.
Използвайте REGEXREPLACE, за да анонимизирате телефонни номера, като заместите първите 3 цифри с ***, като използвате шаблон
"[0-9]+-"
Data |
Sonia Rees(378) 555-4195 Ангел кафяво(878) 555-8622 Блейк Мартин (437) 555-8987 Уилям Кърби (619) 555-4212 Avery Smith(579) 555-5658 Паркър Джоунс(346) 555-0925 Liam Small(405) 555-0887 Hollie Rees(666) 555-1872 |
Формули |
=REGEXREPLACE(A2;"[0-9]+-";"***-") |
Следващата илюстрация показва резултата. Ще трябва да обтегне текста в клетка A4, за да покажете знаците за нов ред в резултата.
Използвайте REGEXREPLACE със събиране на групи, за да отделите и пренаредите даденото име и фамилното име, като използвате шаблон: "([A-Z][a-z]+)([A-Z][a-z]+)"; и замяна: "$2, $1".
Забележка: Снемането на групи се дефинира в шаблон със скоби "()" и може да се посочи като "$n". В този пример $ 1 и $2 препращат съответно към първата и втората групи за събиране.
Data |
СоняБрю |
Формули |
=REGEXREPLACE(A2;"([A-Z][a-z]+)([A-Z][a-z]+)";"$2, $1") |
Следващата илюстрация показва резултатите.