Vom trece direct la răspunsul scurt și ne vom ocupa după aceea de explicația lungă.

Pur și simplu, nu.

Îi aud pe dezvoltatori și pe avocații diavolului care pun la îndoială refuzul nostru categoric al validării regex a e-mailurilor, ceea ce duce la întrebarea suplimentară, atunci, de ce există.

Ei bine, nu vom nega că poate fi un instrument util și este cu siguranță un kit inteligent pentru a împiedica utilizatorii să adauge orice text vechi într-un formular sau alt mediu executabil. La un moment dat, regex-ul de e-mail a avut rolul său în modul în care colectăm date de e-mail.

Dar acum? În conformitate cu tehnologia și standardele actuale?

Noi spunem că și-a făcut zilele.

Dacă doriți să vă asigurați că primiți adrese de e-mail curate care nu vă vor afecta marketingul prin e-mail, ratele de respingere, scorurile de livrare și toate lucrurile de care știți că aveți nevoie pentru a vă menține indicatorii la un nivel ridicat și pentru a vă menține conversiile, atunci regex nu este soluția.

Ce este regex-ul de validare a e-mailurilor?

Regex este prescurtarea de la expresie regulată; este un termen utilizat în diverse limbaje de codare. Regex, sau expresii regulate, se referă la șiruri de text codificat concepute pentru a se potrivi cu modelele găsite în alte șiruri.

Acestea pot fi foarte utile atunci când un utilizator trebuie să potrivească un șir de caractere cu un anumit tip de model pentru a verifica dacă informațiile furnizate sunt corecte. Luați în considerare numerele de telefon, codurile poștale, datele și, da, cea mai importantă dintre acestea - adresele de e-mail.

Cu ajutorul unui model simplu, un șir de caractere exact poate fi comparat cu un set de reguli. Atunci când modelele simple devin mai complicate, regex devine mai puțin eficient și este mai probabil să producă rezultate proaste.

Sună bine până acum - deci, care este problema cu validarea regex a e-mailurilor?

Oricât de ingenios ar fi un instrument precum regex, acesta nu acoperă verificările de care aveți nevoie. Aruncați o privire la acestea:

[email protected]
[email protected]
[email protected]
[email protected]

Să presupunem că ați observat oricare dintre cele de mai sus ca adăugări la lista dvs. de e-mailuri; le-ați semnala imediat (sau ar trebui să o faceți!). Nu ați crede că vreuna dintre ele este o înscriere validă, făcută de persoane reale care își manifestă interesul pentru produsul și serviciul dvs.

Totuși, validarea Regex a e-mailurilor ar putea fi validată. Le-ar lăsa pe toate să treacă.

De ce? Pentru că acele adrese evident false respectă totuși tiparele pe care regulile sale au fost stabilite pentru a le confirma.

Nu mai pare atât de inteligent acum, nu-i așa?

Este prea restrictiv

În ciuda faptului că aceste exemple anterioare ne par atât de evident false, unele formate de e-mail includ mult mai multe caractere speciale decât suntem obișnuiți să vedem.

În forma sa cea mai simplă, o adresă de e-mail are următorul format:

nume utilizator@domeniu

Adresele de e-mail sunt construite în trei secțiuni:

  • Partea locală - de obicei un nume de utilizator sau un rol de muncă
  • Caracterul @
  • Domeniul, inclusiv un TLD (Top Level Domain) valid.

Dacă acesta ar fi fost singurul lucru pe care codul ar fi trebuit să îl caute, atunci o verificare regex javascript tipică ar fi împiedicat o mulțime de contacte proaste să ajungă în listele noastre.

În mod obișnuit, adresele noastre de e-mail pot include următoarele caractere:

  • Cifre: De la 0 la 9
  • Litere minuscule și majuscule: de la a la z și de la A la Z
  • Caractere speciale suplimentare: !#%P2T%&'*+-/=?^_`{|}~
  • Caracterul punct [.]: Dar nu ca primul sau ultimul caracter, sau folosit consecutiv.

Dacă cineva s-ar înscrie în lista dvs. de e-mail cu unul sau mai multe dintre aceste caractere speciale, cei mai mulți dintre noi s-ar întreba dacă ceva nu este în neregulă, și am greși - toate sunt permise în conformitate cu convenția actuală.

Regex nu verifică nimic altceva în afară de sintaxă

Dezvoltatorii ar putea fi preocupați doar de obținerea unor adrese valide prin intermediul unui formular, dar nu și noi. Noi trebuie să știm:

  • Există domeniul?
  • Există o înregistrare MX pentru a dovedi că domeniul are un server de e-mail?
  • Adresa de e-mail are un cont de e-mail funcțional?

Oricare dintre aceste întrebări care primește un "nu" va primi un "nu" dur și din partea noastră, ca agenți de marketing. Regex nu verifică niciunul dintre aceste aspecte - doar un instrument dedicat de validare a e-mailurilor va scoate la iveală astfel de steaguri roșii.

Nu identifică adresele temporare și de unică folosință

În calitate de specialiști în marketing prin e-mail, un alt lucru de care suntem mai mult decât conștienți este faptul că o mulțime de utilizatori își creează conturi temporare false pentru a profita de o ofertă, o promoție sau altă situație. Este o modalitate ușoară de a evita să adauge dezordine la conturile lor de e-mail existente sau să ofere informații despre ei înșiși pe care nu doresc să le ofere.

Este ușor să configurați o adresă de e-mail temporară sau de unică folosință ca soluție unică. Adesea, aceste adrese dispar în 10 sau 15 minute după ce au fost configurate, ceea ce le face incredibil de potrivite pentru scop.
Regex nu le va verifica. Adresele de e-mail temporare și de unică folosință trec toate testele de validare regex.

Cum ai putea configura un e-mail regex javascript?

Dacă sunteți un dezvoltator experimentat, probabil că nu veți avea nevoie de cunoștințele noastre de bază în domeniu pentru a vă spune cum să procedați, dar pentru cei care au ceva experiență în codare, ar trebui să arate cam așa:

function ValidateEmail(inputText)

{

var mailformat = [a-z0-9!#$%&’*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&’*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?

if(inputText.value.match(mailformat))

{

alert("Aceasta nu este o adresă de e-mail validă");

returnează fals;

}

}

Partea care face toată treaba grea este partea var mailformat linie. Execuția și caracterele din acea linie lungă de cod definesc ce este permis și ce nu este permis.

Poți identifica lucrurile simple: a-z, A-Z, 0-9și apoi caracterele speciale din prima secțiune locală. +@ dictează apoi separatorul local și cel de domeniu. După @, urmează o altă serie de instrucțiuni despre ceea ce este permis pentru secțiunea de domeniu.

Dacă doriți o perspectivă mult mai profundă asupra a ceea ce este necesar pentru a implementa un validator regex, atunci accesați abstract. Ei au un ghid foarte bun despre ce anume este nevoie și sunt experți când vine vorba de tot felul de adăugiri și includeri API.

Dacă merită să faci o treabă, merită să o faci bine, așa că validează-ți listele în cel mai bun mod posibil.

Există o singură modalitate de a vă asigura că listele de email sunt în condiții premium, și anume să folosiți un instrument dedicat de validare a emailurilor, cum ar fi Bouncer.

Validarea Regex ar putea fi responsabilă pentru introducerea de adrese de e-mail false în listele dvs. de e-mail, precum și pentru blocarea celor valide. Când vine vorba de adăugarea unei metode de autentificare la formularele dvs. online sau la metodele de colectare a datelor, vă sugerăm alte forme de validare, mai robuste.

În cele din urmă, rularea listelor de e-mail printr-o platformă precum Bouncer este de departe cea mai bună modalitate de a vă păstra listele curate și sănătoase, ratele de respingere scăzute, capacitatea de livrare ridicată și scorul de expeditor în formă maximă.

Întrebări frecvente despre Regex pentru mesajele de e-mail

Ce este un regex simplu pentru validarea e-mailurilor?

O expresie regulată (regex) simplă pentru validarea e-mailurilor este o secvență de caractere care definește un model de căutare pentru adresele de e-mail. Acesta poate fi utilizat pentru a verifica dacă un șir de caractere se potrivește cu formatul standard al unei adrese de e-mail. Cu toate acestea, este important de reținut că un regex simplu poate să nu surprindă toate adresele de e-mail invalide și poate permite trecerea unor formate de e-mail nestandardizate.

Cum ajută regex-ul de e-mail în filtrarea adreselor de e-mail invalide?

Email regex este utilizat pentru a potrivi șirul de intrare (adresa de e-mail introdusă de un utilizator) cu un format specific. Dacă adresa de e-mail nu se potrivește cu acest format, aceasta este considerată invalidă. Acest lucru poate ajuta la prevenirea greșelilor de scriere, la asigurarea coerenței datelor și la protejarea împotriva anumitor tipuri de atacuri de injecție.

Ce este un caracter de spațiu alb în contextul regex-ului de e-mail?

Un caracter de spațiu alb în regex-ul de e-mail se referă la orice caracter care este utilizat pentru a reprezenta spațiile goale, cum ar fi spațiile, filele sau pauzele de linie. În contextul adreselor de e-mail, caracterele de spații albe nu sunt de obicei permise, iar prezența lor ar face ca o adresă de e-mail să fie invalidă.

Ce este un regex complex de e-mail?

O expresie regulată complexă de e-mail este o expresie regulată mai detaliată și mai precisă utilizată pentru validarea e-mailurilor. Aceasta poate lua în considerare diverse aspecte ale adreselor de e-mail, cum ar fi numele de domeniu, caracterele nelatine și regulile specifice privind locul în care pot apărea anumite caractere. Deși oferă o validare mai amănunțită, poate fi, de asemenea, mai dificil de implementat și de întreținut.

Cum gestionează regex-ul de e-mail caracterele non-latine și Unicode?

Manipularea caracterelor nelatine și Unicode în regex-ul de e-mail poate fi complexă. Unele sisteme de e-mail permit adrese de e-mail Unicode sau non-Latine, dar nu sunt acceptate în mod universal. Un regex de e-mail complex poate include clase de caractere pentru a se potrivi cu caractere nelatine, dar este esențial să înțelegeți cerințele și constrângerile specifice ale sistemului de e-mail cu care lucrați.

Care este rolul claselor de caractere în regex-ul de e-mail?

Clasele de caractere în regex-ul de e-mail definesc un set de caractere care se pot potrivi cu orice caracter din șirul de intrare. De exemplu, clasa de caractere [a-z] se potrivește cu orice literă engleză minusculă. Clasele de caractere pot fi utilizate pentru a specifica caracterele valide pentru diferite părți ale unei adrese de e-mail.

Care sunt limitările regex-ului pentru validarea e-mailurilor?

În timp ce regex-ul de e-mail poate detecta multe erori comune în adresele de e-mail, nu este o metodă de validare completă. Unele adrese invalide pot trece totuși de o verificare regex, iar unele adrese valide pot eșua, mai ales dacă folosesc formate sau caractere mai puțin comune. Pentru o validare completă a e-mailurilor, se recomandă adesea utilizarea serviciilor de validare a e-mailurilor sau trimiterea unui e-mail de confirmare la adresa introdusă.

Mergeți pentru verificarea în profunzime a e-mailului, mergeți la Bouncer