Hüppame kohe lühikese vastuse juurde ja tegeleme pikema seletusega pärast seda.

Lihtsalt - ei.

Ma kuulen, kuidas arendajad ja kuradi kaitsjad seavad kahtluse alla meie regexi e-kirjade valideerimise otsekohese eitamise, mis paneb meid küsima, miks see üldse olemas on.

Noh, me ei eita, et see võib olla kasulik vahend, ja kindlasti on see nutikas pisik, mis takistab kasutajatel lisamast mis tahes vana teksti vormi või muule täidetavale andmekandjale. Ühel hetkel oli e-posti regexil oma osa selles, kuidas me e-posti andmeid kogume.

Aga nüüd? Kooskõlas praeguse tehnoloogia ja standarditega?

Me ütleme, et see on oma aja ära elanud.

Kui soovite tagada, et saate puhtaid e-posti aadresse, mis ei sega teie e-posti turundust, tagasilöögimäära, kättetoimetamise tulemusi ja kõiki neid asju, mida te teate, et hoida oma näitajad kõrgel ja konversioonid jooksvalt, siis regex ei ole õige viis.

Mis on e-posti valideerimise regex?

Regex on lühend regulaaravaldisest; see on termin, mida kasutatakse erinevates kodeerimiskeeltes. Regex ehk regulaaravaldised viitavad kodeeritud tekstisõnadele, mis on mõeldud teistes sõnades leiduvate mustrite sobitamiseks.

Need võivad olla üsna kasulikud, kui kasutajal on vaja sobitada tähemärkide jada teatavat tüüpi mustriga, et kontrollida, kas esitatud teave on õige. Mõelge telefoninumbritele, sihtnumbritele, kuupäevadele ja jah, suurele, millega me tegeleme - e-posti aadressidele.

Lihtsa mustri abil saab täpse stringi sobitada reeglistikuga. Kui lihtsad mustrid muutuvad keerulisemaks, muutub regex vähem tõhusaks ja annab suurema tõenäosusega halbu tulemusi.

Siiani kõlab see hästi - mis on siis regexi e-posti valideerimisega seotud probleem?

Nii nutikas tööriist kui regex ongi, ei hõlma see vajalikke kontrolle. Vaadake neid:

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

Oletame, et märkate mõne ülalnimetatuist oma meililisti lisana; te märgiksite need kohe ära (või peaksite seda tegema!). Te ei usuks, et mõni neist on tõeliste inimeste poolt tehtud kehtiv kanne, mis näitab huvi teie toote ja teenuse vastu.

Regex e-posti valideerimine oleks, kuigi. See laseks need kõik läbi.

Miks? Sest need ilmselgelt võltsitud aadressid järgivad ikkagi selle reegleid, mille kinnitamiseks on kehtestatud reeglid.

See ei tundu nüüd enam päris nii nutikas, eks ole?

See on liiga piirav

Hoolimata sellest, et need eelmised näited tunduvad meile nii ilmselgelt valed, sisaldavad mõned e-posti vormingud palju rohkem erimärke, kui me oleme harjunud nägema.

Kõige lihtsamal kujul ja e-posti aadress järgib järgmist vormi:

kasutajanimi@domeen

E-posti aadressid on konstrueeritud kolmest osast:

  • Kohalik osa - tavaliselt kasutajanimi või tööülesanne
  • Tähemärk @
  • Domeen, sealhulgas kehtiv tippdomeen (Top Level Domain)

Kui see oleks kõik, mida kood pidi otsima, siis tavaline javascript regex kontroll hoiaks ära hulga halbade kontaktide sattumise meie nimekirjadesse.

Tavaliselt võivad meie e-posti aadressid sisaldada järgmisi sümboleid:

  • Numbrid: 0 kuni 9
  • Väikesed ja suured tähed: a-st z-ni ja A-st Z-ni
  • Täiendavad erimärgid: !#$%&'*+-/-/=?^_`{|}~
  • Punktimärk [.]: Kuid mitte esimese või lõpumärgina või järjestikku kasutatavana

Kui keegi kandideeriks teie meililisti mõne või mitme sellise erimärgiga, küsiks enamik meist, kas midagi on valesti, ja me eksiksime - need kõik on praeguse konventsiooni kohaselt lubatud.

Regex ei kontrolli midagi muud peale süntaksi

Arendajad võivad olla mures ainult selle pärast, et saada vormi kaudu kehtiva välimusega aadressid, kuid meie ei ole seda. Me peame teadma:

  • Kas domeen on olemas?
  • Kas on olemas MX-kirje, mis tõestab, et domeenil on postiserver?
  • Kas meiliaadressil on toimiv e-posti konto?

Kõik need küsimused, mis saavad "ei", saavad ka meilt kui turundajatelt kõva "ei". Regex ei kontrolli midagi sellist - ainult spetsiaalne e-posti valideerimisvahend tõmbab sellised punased lipud välja.

See ei tuvasta ajutisi ja ühekordselt kasutatavaid aadresse.

Meiliturundajatena oleme rohkem kui teadlikud sellest, et paljud kasutajad loovad võltsitud ajutisi kontosid, et saada kasu pakkumisest, kampaaniast või muust olukorrast. See on lihtne viis, kuidas vältida oma olemasolevatele e-posti kontodele segaduse lisamist või enda kohta teabe andmist, mida nad ei soovi.

Ajutise või ühekordselt kasutatava e-posti aadressi seadistamine on lihtne ühekordse lahendusena. Need aadressid kaovad sageli 10 või 15 minuti jooksul pärast nende loomist, mistõttu on need uskumatult sobivad.
Regex ei kontrolli neid. Ajutised ja ühekordsed e-posti aadressid läbivad kõik regexi valideerimise testid.

Kuidas seadistada e-posti regex javascript?

Kui te olete vilunud arendaja, ei ole teil ilmselt vaja meie põhitõdesid, et teile öelda, kuidas, kuid neile, kellel on mõningane kogemus kodeerimises, peaks see välja nägema umbes nii:

funktsioon 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("See ei ole kehtiv e-posti aadress");

tagasi false;

}

}

Osa, mis teeb kogu rasket tööd, on var mailformat rida. Selle pika koodirea täitmine ja tähemärgid määravad, mis on lubatud ja mis mitte.

Sa oskad märgata lihtsaid asju: a-z, A-Z, 0-9ja seejärel erimärgid esimeses, kohalikus osas. +@ dikteerib seejärel kohaliku ja domeeni eraldaja. Pärast @ on meil siis veel üks rida juhiseid selle kohta, mis on lubatud domeenilõikes.

Kui soovite palju sügavamat ülevaadet sellest, mida on vaja regexi valideerija rakendamiseks, siis suunduge abstraktsele veebilehele. Neil on väga hea juhend, mis täpselt seda nõuab, ja nad on eksperdid, kui tegemist on igasuguste API-lisandite ja -lisanditega.

Kui töö on seda väärt, et seda teha, siis tasub seda ka hästi teha - seega valideerige oma nimekirjad parimal võimalikul viisil.

On ainult üks viis, kuidas veenduda, et teie e-posti nimekirjad on parimas seisukorras, ja see on kasutada spetsiaalset e-posti valideerimise tööriista, nagu näiteks Põrgutaja.

Regexi valideerimine võib olla vastutav selle eest, et teie e-posti nimekirjadesse satuvad võltsitud e-posti aadressid, aga ka selle eest, et kehtivad aadressid blokeeritakse. Kui tegemist on autentimismeetodi lisamisega teie veebivormidele või andmekogumismeetoditele, soovitame muid, tugevamaid valideerimisviise.

Lõppkokkuvõttes on oma e-posti nimekirjade juhtimine läbi sellise platvormi nagu Bouncer kaugelt parim viis hoida oma nimekirjad puhtad ja terved, teie tagasilöögimäära madalana, teie kättetoimetatavuse kõrge ja teie saatja skoor tipptopp-korras.

E-posti sõnumi Regex KKK

Mis on lihtne regex e-posti valideerimiseks?

Lihtne regex (regulaaravaldis) e-posti valideerimiseks on tähemärkide jada, mis määrab e-posti aadresside otsingumustri. Seda saab kasutada selleks, et kontrollida, kas string vastab e-posti aadressi standardsele vormingule. Siiski on oluline märkida, et lihtne regex ei pruugi tabada kõiki kehtetuid e-posti aadresse ja võib lasta läbida mõningaid mittestandardseid e-posti vorminguid.

Kuidas aitab e-posti regex ebaõigete e-posti aadresside välja filtreerimisel?

Email regexi kasutatakse sisendstringi (kasutaja sisestatud e-posti aadress) sobitamiseks konkreetse formaadiga. Kui e-posti aadress ei vasta sellele vormingule, loetakse see kehtetuks. See aitab vältida kirjavigu, tagada andmete järjepidevust ja kaitsta teatud tüüpi süstimisrünnakute eest.

Mis on tühiku märk e-posti regexi kontekstis?

E-posti regexis tähistab tühikut tähistav märk mis tahes märki, mida kasutatakse tühikute, näiteks tühikute, tabulaatorite või reavahetuste tähistamiseks. E-posti aadresside kontekstis ei ole tühikutähed tavaliselt lubatud ja nende olemasolu muudaks e-posti aadressi kehtetuks.

Mis on keeruline e-posti regex?

Keeruline e-posti regex on üksikasjalikum ja täpsem regulaaravaldis, mida kasutatakse e-posti valideerimiseks. See võib arvesse võtta e-posti aadresside erinevaid aspekte, näiteks domeeninimesid, mitteladina tähemärke ja konkreetseid reegleid selle kohta, kus teatud tähemärgid võivad esineda. Kuigi see võimaldab põhjalikumat valideerimist, võib selle rakendamine ja haldamine olla ka keerulisem.

Kuidas e-posti regex käitleb mitte-ladina tähemärke ja Unicode'i?

Muude kui ladina tähemärkide ja Unicode'i tähemärkide käsitlemine e-posti regexis võib olla keeruline. Mõned e-kirjasüsteemid võimaldavad Unicode'i või mitteladina kirjamärke, kuid need ei ole üldiselt toetatud. Keeruline e-posti regex võib sisaldada tähemärgiklasse, et sobitada mitte-ladina tähemärke, kuid oluline on mõista selle e-posti süsteemi erinõudeid ja piiranguid, millega te töötate.

Milline on märgiklasside roll e-posti regexis?

E-posti regexi tähemärgiklassid määratlevad tähemärkide kogumi, mis võib sobida mis tahes üksiku tähemärgiga sisendtähises. Näiteks tähemärgiklass [a-z] vastab igale ingliskeelsele väiketähtedele. Märgiklasse saab kasutada e-posti aadressi erinevate osade jaoks kehtivate tähemärkide määramiseks.

Millised on e-posti regexi piirangud e-posti valideerimiseks?

Kuigi e-posti regexiga on võimalik tabada palju levinud vigu e-posti aadressides, ei ole see täielik valideerimismeetod. Mõned kehtetud aadressid võivad siiski regexi kontrolli läbida ja mõned kehtivad aadressid võivad ebaõnnestuda, eriti kui neis kasutatakse vähem levinud vorminguid või sümboleid. Põhjalikuks e-posti valideerimiseks soovitatakse sageli kasutada e-posti valideerimisteenuseid või saata sisestatud aadressile kinnitav e-kiri.

Minge põhjaliku e-posti kontrollimiseks, minge Bouncer'ile