Funcția REGEXREPLACE

Funcția REGEXREPLACE vă permite să înlocuiți textul dintr-un șir cu un alt șir, pe baza unei expresii regulate furnizate ("regex").

Sintaxă

Funcția REGEXREPLACE înlocuiește șirurile din textul furnizat care se potrivește modelului cu înlocuirea.

Sintaxa funcției REGEXEXTRACT este:

REGEXREPLACE(text, model, înlocuire, [apariție], [case_sensitivity])

Argument Descriere
text
(obligatoriu)
Este textul sau referința la celula care conține textul în care vreți să înlocuiți șirurile.
model
(obligatoriu)
Expresia regulată ("regex") care descrie modelul de text pe care doriți să-l înlocuiți.
înlocuire
(obligatoriu)
Este textul pe care doriți să-l înlocuiți instanțele modelului.
Ocurență Specifică instanța modelului pe care doriți să o înlocuiți. În mod implicit, ocurența este 0, înlocuind toate instanțele. Un număr negativ înlocuiește acea instanță, căutarea de la sfârșit.
case_sensitivity Determină dacă potrivirea este sensibilă la litere mari și mici. În mod implicit, potrivirea este sensibilă la litere mari și mici. Introduceți unul dintre următoarele elemente:
0: Sensibil la litere mari și mici
1: Nu este sensibil la litere mari și mici

Notă

Când scrieți modele regex, pot fi utilizate simboluri numite "tokenuri" care se potrivesc cu o varietate de caractere. Iată câteva simboluri simple pentru referință:

  • "[0-9]": orice cifră numerică
  • "[A-Z]": un caracter cuprins în intervalul de la A la Z
  • ".": orice caracter
  • "a": caracterul "a"
  • "A*": zero sau mai mulți "A"
  • "A+": unul sau mai mulți "A"
  • Toate expresiile regulate pentru această funcție, precum și REGEXTEST și REGEXEXTRACT utilizează "aroma" PCRE2 al regex.
  • REGEXEXTRACT returnează întotdeauna valori text. Puteți efectua conversia acestor rezultate înapoi la un număr cu funcția VALUE.

Exemple

Copiați datele din exemplu și lipiți-le în celula A1 a unei foi de lucru Excel noi. Dacă trebuie, puteți ajusta lățimea coloanei pentru a vedea toate datele.

Exemplul 1

Utilizați REGEXREPLACE pentru a anonimiza numerele de telefon, înlocuind primele 3 cifre cu ***, utilizând model

"[0-9]+-"

Date
Sonia Rees (378) 555-4195
Angel Brown (878) 555-8622
Blake Martin (437) 555-8987
William Kirby (619) 555-4212
Avery Smith (579) 555-5658
Parker Jones(346) 555-0925
Liam Small(405) 555-0887
Hollie Rees (666) 555-1872
Formule
=REGEXREPLACE(A2,"[0-9]+-","***-")

Ilustrația următoare afișează rezultatul. Va trebui să încadrați textul în celula A4 pentru a afișa sfârșiturile de linie din rezultat.

Se utilizează REGEXREPLACE pentru a înlocui primele trei cifre ale fiecărui număr de telefon cu *, utilizând modelul [0-9]+-

Exemplul 2

Utilizați REGEXREPLACE cu capturarea grupurilor pentru a separa și a reordona numele și numele de familie, utilizând modelul: "([A-Z][a-z]+)([A-Z][a-z]+)"; și înlocuire: "2 lei, 1 lei".

Notă: Grupurile de capturare sunt definite în model cu paranteze "()" și se poate face referire în înlocuire ca "$n". În acest exemplu, $1 și $2 fac referire la primul și respectiv al doilea grup de capturare.

Date
SoniaBrown
Formule
=REGEXREPLACE(A2,"([A-Z][a-z]+)([A-Z][a-z]+)","$2, $1")

Ilustrația următoare afișează rezultatele.

Utilizați REGEXREPLACE cu capturarea grupurilor pentru a separa și a reordona numele și prenumele, utilizând modelul: ([A-Z][a-z]+)([A-Z][a-z]+) și înlocuirea: $2, $1