REGEXZASTĄP, funkcja

Dotyczy
Excel dla Microsoft 365 Excel dla Microsoft 365 dla komputerów Mac

Funkcja REGEXREPLACE umożliwia zamianę tekstu z ciągu na inny ciąg na podstawie podanego wyrażenia regularnego ("regex").

Składnia

Funkcja REGEXREPLACE zastępuje ciągi w podanym tekście , który jest zgodny ze wzorcem z zamianą.

Składnia funkcji REGEXWYODRĘBNIJ jest następująca:

REGEXREPLACE(tekst, wzorzec, zamiana; [wystąpienie]; [case_sensitivity])

Argument Opis
tekst
(wymagane)
Tekst lub odwołanie do komórki zawierającej tekst, w którym mają zostać zamienione ciągi.
deseń
(wymagane)
Wyrażenie regularne ("regex") opisujące wzorzec tekstu, który ma zostać zamieniony.
Zamiennik
(wymagane)
Tekst, który ma zostać zamieniony na wystąpienia deseniu.
Wystąpienie Określa, które wystąpienie szyku ma zostać zastąpione. Domyślnie argument wystąpienie to 0, które zastępuje wszystkie wystąpienia. To wystąpienie jest wyszukujące od końca liczbą ujemną.
case_sensitivity Określa, czy w dopasowaniu jest uwzględniana wielkość liter. Domyślnie w dopasowaniu jest uwzględniana wielkość liter. Wprowadź jedną z następujących opcji:
0: Uwzględnianie wielkości liter
1: Bez uwzględniania wielkości liter

Uwaga

Podczas pisania wzorców wyrażeń regularnych można używać symboli zwanych "tokenami", które pasują do różnych znaków. Oto kilka prostych tokenów w celach informacyjnych:

  • "[0-9]": dowolna cyfra numeryczna
  • "[A-Z]": znak z zakresu od A do Z
  • ".": dowolny znak
  • "a": znak "a"
  • "a*": zero lub więcej "a"
  • "A+": co najmniej jeden znak "a"
  • Wszystkie wyrażenia regularne tej funkcji, jak również REGEXTEST i REGEXEXTRACT , używają "smaku" PCRE2 wyrażenia regularnego.
  • Funkcja REGEXWYODRĘBNIJ zawsze zwraca wartości tekstowe. Te wyniki można przekonwertować z powrotem na liczbę za pomocą funkcji WARTOŚĆ.

Przykłady

Skopiuj przykładowe dane i wklej je w komórce A1 nowego arkusza programu Excel. Jeśli to konieczne, możesz dostosować szerokości kolumn, aby wyświetlić pełne dane.

Przykład 1

Użyj wyrażenia REGEXZASTĄP w celu anonimizacji numerów telefonów, zastępując ich pierwsze 3 cyfry znakiem ***, przy użyciu wzorca

"[0-9]+-"

Dane
Sonia Rees(378) 555-4195
Anioł Brązowy(878) 555-8622
Blake Martin(437) 555-8987
Williama Kirby'ego(619) 555-4212
Avery Smith(579) 555-5658
Parker Jones(346) 555-0925
Liama Małego(405) 555-0887
Hollie Rees(666) 555-1872
Formuły
=REGEXREPLACE(A2;"[0-9]+-";"***-")

Poniższa ilustracja przedstawia wynik. Konieczne będzie zawinięcie tekstu w komórce A4, aby pokazać podziały wierszy w wyniku.

Używanie funkcji REGEXZASTĄP w celu zastąpienia pierwszych trzech cyfr każdego numeru telefonu w tekście mieszanym znakiem *, stosując wzorzec [0-9]+-

Przykład 2

Użyj REGEXREPLACE z grupami przechwytującymi, aby oddzielić i zmienić kolejność imienia i nazwiska, używając wzorca: "([A-Z][a-z]+)([A-Z][a-z]+)"; i zamiana: "$2, $1".

Uwaga: Grupy przechwytywania są zdefiniowane we wzorcu z nawiasami "()" i można do nich odwoływać się w zamianie jako "$n". W tym przykładzie wartości $1 i $2 odwołują się odpowiednio do pierwszej i drugiej grupy przechwytywania.

Dane
Sonia Brown
Formuły
=REGEXREPLACE(A2;"([A-Z][a-z]+)([A-Z][a-z]+)";"$2, $1")

Poniższa ilustracja przedstawia wyniki.

Użyj funkcji REGEXZASTĄP z grupami przechwytywania, aby oddzielić i zmienić kolejność imienia i nazwiska, używając wzorca: ([A-Z][a-z]+)([A-Z][a-z]+) i zamiany: $2, $1