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

Pur și simplu, nu.

Pot auzi dezvoltatorii și avocații diavolilor de acolo punând la îndoială negarea noastră brutală a regex-ului validare e-mail, ceea ce ne face să ne întrebăm 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ă vrei să te asiguri că primești adrese de e-mail curate care să nu vă afecteze 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 [email protected]

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 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ă ești o mână dibace dezvoltator, 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ă. [email protected] 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 în ceea ce privește exact ce este nevoie și sunt experți când vine vorba de toate tipurile de API adăugiri și incluziuni.

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 email 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, livrabilitatea ridicată și scorul expeditorului în cea mai bună formă.

CITEȘTE MAI MULT
Un scurt ghid privind adresele de e-mail comune de capcană pentru spam

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