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.
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.