Acasă
» Wiki
»
Cum să utilizați funcția Regex din Excel pentru a vă spori căutările
Cum să utilizați funcția Regex din Excel pentru a vă spori căutările
Filtrarea și căutarea în Excel nu este o sarcină simplă. Funcțiile regex vor schimba asta. Acum puteți specifica exact ceea ce aveți nevoie - modele complexe, potriviri parțiale sau extragerea datelor structurate - fără efort.
Regex este un tip de model folosit pentru a căuta potriviri într-un text sau un șir de caractere. V-ați întrebat vreodată cum site-urile web vă pot spune că șablonul de e-mail pe care l-ați introdus în pagina de conectare este invalid? Iată un exemplu de model regex folosind o semnătură de e-mail în acțiune.
Expresiile regulate nu sunt specifice Excelului - sunt disponibile în multe editoare de text, limbaje de programare, instrumente din linia de comandă, IDE-uri și chiar în concurentul Excelului, Google Sheets .
Regex poate părea complicat și este dacă vrei să-l folosești la întregul său potențial, dar nu trebuie să fii programator pentru a-l folosi eficient. În unele cazuri, puteți scăpa doar știind cum să folosiți câteva simboluri și modele de bază. Acest ghid va fi cât mai simplu posibil, astfel încât să puteți începe să le utilizați.
Următoarele sunt simbolurile care vor fi folosite în acest ghid:
Simbol
Descrie
-
Specificați intervalul de caractere între paranteze.
^
Se potrivește cu începutul unui șir.
$
Se potrivește cu sfârșitul unui șir de caractere.
.
Se potrivește cu orice caracter, cu excepția caracterului nou linie.
*
Se potrivește cu zero sau mai multe caractere precedente.
+
Se potrivește cu caracterul sau caracterele anterioare.
()
Grupați personajele care se potrivesc într-unul singur.
[]
Se potrivește cu orice caracter din paranteze.
[^]
Se potrivește cu orice caracter care nu este între paranteze.
{n}
Se potrivește exact n cazuri ale caracterului anterior.
{n,}
Se potrivește cu nu sau mai multe apariții ale caracterului anterior
Modelele simple de expresie regulată pe care le puteți construi folosind aceste simboluri includ:
Model Regex
Descrie
[0-9]
Se potrivește cu o cifră de la 0 la 9
[a-zA-z0-9]
Acesta este un interval de potriviri care se potrivește cu un singur caracter de la minuscule a la z, majuscule de la A la Z și de la 0 la 9.
^pro
Se potrivește cu orice șir care începe cu pro .
[^$]
Se potrivește cu orice alt caracter decât $ .
(copil)
Eșantion de subgrup .
a{3,}
Se potrivește cu 3 sau mai multe apariții ale părții care urmează a (de exemplu, a , aa sau aaa ).
Funcțiile Regex sunt formule Excel predefinite care pot fi utilizate pentru a defini un model pentru căutarea și manipularea șirurilor de text. În prezent, există 3 funcții regex. Vom vedea cum să le folosim separat și cu alte funcții.
Căutați modele
Prima funcție la care ne vom uita este REGEXTEST. Această funcție preia un șir de text pe care doriți să îl utilizați pentru căutare și un model regex, apoi folosește ultimul model pentru a găsi potriviri în modelul anterior. Funcția va returna True sau False.
Primii doi parametri, string_to_search și regex_pattern_to_use sunt destul de auto-explicative. Parametrul [case_sensitivity] este opțional - orice este inclus între paranteze drepte atunci când vorbim despre sintaxa Excel este opțional - și indică dacă doriți ca căutarea să fie sensibilă la majuscule (0) sau indiferență (1). Valoarea implicită ține seama de majuscule.
Exemplul va folosi REGEXTEST pentru a vedea dacă utilizatorul a introdus o adresă de e-mail validă folosind următoarea formulă:
Aici, căutăm în celula B3 pentru a vedea dacă conține o adresă de e-mail folosind modelul de expresie regulată de mai jos:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
Dacă puneți formula în celula C3 și introduceți john.doe@example.com în celula B3, formula va returna True deoarece se potrivește cu semnătura de e-mail.
Funcția REGEXTEST în Excel.
Date suplimentare folosind Regex
În continuare, să ne uităm la funcția REXEXEXTRACT. Această funcție returnează un subșir (parte a unui șir) care se potrivește cu modelul regex furnizat.
Continuând cu exemplul de e-mail, să adăugăm o formulă în celula B4 pentru a extrage numele de utilizator al părții de e-mail.
Formula ar arăta astfel:
=REGEXEXTRACT(B3, "([^@]+)")
În această formulă, extragem totul înainte de simbolul @ din adresa de e-mail introdusă în B3.
Funcția REGEXEXTRACT în Excel.
Găsiți și înlocuiți cu Regex
Ultima funcție regex la care ne vom uita este REGEXREPLACE. Această funcție este similară cu funcția REPLACE din Excel, dar acceptă și RegEx. Acesta ia șirul de text pe care doriți să îl modificați și verifică dacă vreun subșir se potrivește cu modelul regex definit. Dacă este găsit, înlocuiește acel șir cu șirul de înlocuire furnizat.
Iată care sunt parametrii importanți de reținut în această funcție:
string_to_modify : șirul de text pe care doriți să îl modificați.
replacement_string : șir cu care să înlocuiți subșirul.
number_of_ocurrences : instanțele exacte pe care doriți să le înlocuiți.
Iată un exemplu de utilizare a funcției pentru a înlocui partea de nume de utilizator a unui e-mail cu un alt șir de text:
=REGEXREPLACE(B3, "^[^@]+", "jane.doe")
Valoarea lui B3 este john.doe@example.com și după ce introducem formula de mai sus în celula C3, va returna jane.doe@example.com.
Funcția REGEXREPLACE în Excel.
Combinarea Regex cu alte funcții
De asemenea, puteți combina funcții regex cu alte funcții în Excel. De exemplu, puteți combina funcția REGEXTEST cu instrucțiunea IF din Excel și puteți afișa mesaje adecvate pe baza rezultatelor.
Iată un exemplu de formulă:
=IF(REGEXTEST(B3, "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$"), "This is a valid email address!", "The email address is invalid!")
Această formulă utilizează o declarație IF pentru a verifica dacă adresa de e-mail introdusă în celula B6 este validă și apoi afișează Aceasta este o adresă de e-mail validă! dacă TRUE sau Adresa de e-mail este invalidă! dacă este FALS . În plus, puteți asocia această formulă cu funcția FIND pentru a găsi rapid date în Excel.
Combinați funcția REGEXTEST și funcția IF în Excel.
Aceasta este o modalitate bună de a începe să utilizați RegEx în Excel. Cazurile de utilizare și posibilitățile sunt limitate doar de imaginația ta.