Rögtön a rövid válaszra térünk rá, a hosszadalmas magyarázattal pedig csak ezután foglalkozunk.

Egyszerűen nem.

Hallom, ahogy a fejlesztők és az ördögök szószólói megkérdőjelezik a regex e-mail érvényesítésének tompa tagadását, ami azt a további kérdést veti fel, hogy miért is létezik ez egyáltalán.

Nos, nem tagadjuk, hogy hasznos eszköz lehet, és minden bizonnyal egy okos kis készlet, amely megakadályozza, hogy a felhasználók bármilyen szöveget hozzáadjanak egy űrlaphoz vagy más futtatható médiumhoz. Egy időben az e-mail regexnek is megvolt a maga szerepe abban, ahogyan az e-mail adatokat gyűjtjük.

De most? A jelenlegi technológiával és szabványokkal összhangban?

Mi azt mondjuk, hogy eljött az ideje.

Ha biztosítani szeretné, hogy tiszta e-mail címeket kapjon, amelyek nem fogják elrontani az e-mail marketingjét, a visszalépési arányokat, a kézbesíthetőségi pontszámokat és mindazokat a dolgokat, amelyekre szüksége van ahhoz, hogy a mérőszámai magasak maradjanak és a konverziók guruljanak, akkor a regex nem a megfelelő megoldás.

Mi az e-mail érvényesítési regex?

A regex a reguláris kifejezés rövidítése; ez egy különböző kódolási nyelvekben használt kifejezés. A regex vagy reguláris kifejezések olyan kódolt szöveges karakterláncokra utalnak, amelyek célja, hogy más karakterláncokban található mintákra illeszkedjenek.

Nagyon hasznosak lehetnek, ha a felhasználónak egy adott típusú mintával kell egyeznie egy karaktersorozatot, hogy ellenőrizze, hogy a megadott információ helyesnek tűnik-e. Gondoljunk csak a telefonszámokra, irányítószámokra, dátumokra, és igen, a legfontosabb, amivel foglalkozunk - az e-mail címekre.

Egy egyszerű mintával egy pontos karakterlánc megfeleltethető egy szabálykészletnek. Ha az egyszerű minták bonyolultabbá válnak, a regex kevésbé lesz hatékony, és nagyobb valószínűséggel ad rossz eredményt.

Eddig jól hangzik - tehát mi a probléma a regex e-mail érvényesítéssel?

Bármilyen ügyes eszköz is a regex, nem fedezi le a szükséges ellenőrzéseket. Nézze meg ezeket:

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

Tegyük fel, hogy a fentiek közül bármelyiket észreveszed, mint az e-mail listád bővítését; azonnal megjelölnéd őket (vagy meg kellene tenned!). Nem hinné, hogy bármelyikük is érvényes bejegyzés, amelyet valódi emberek tettek, akik érdeklődést mutatnak az Ön terméke és szolgáltatása iránt.

A Regex e-mail érvényesítés azonban igen. Mindet átengedné.

Miért? Mert ezek a nyilvánvalóan hamis címek még mindig követik azokat a mintákat, amelyeket a szabályok megerősíteni hivatottak.

Most már nem tűnik olyan okosnak, ugye?

Túlságosan korlátozó

Annak ellenére, hogy az előző példák olyan nyilvánvalóan hamisnak tűnnek számunkra, néhány e-mail formátum sokkal több speciális karaktert tartalmaz, mint amennyit megszoktunk.

A legegyszerűbb formában az e-mail cím a következő formátumot követi:

felhasználónév@domain

Az e-mail címek három részből állnak:

  • A helyi rész - jellemzően egy felhasználónév vagy munkaköri szerepkör
  • A @ karakter
  • A domain, beleértve egy érvényes TLD-t (Top Level Domain, legfelső szintű domain)

Ha a kódnak csak ennyit kellene keresnie, akkor egy tipikus javascript regex-ellenőrzéssel rengeteg rossz kapcsolat nem kerülhetne a listáinkba.

Az e-mail címeink általában a következő karaktereket tartalmazhatják:

  • Számjegyek: 0-tól 9-ig
  • Kisbetűk és nagybetűk: a-tól z-ig és A-tól Z-ig
  • További speciális karakterek: !#$%&'*+-/-/=?^_`{|}~
  • A pont karakter [.]: De nem első vagy utolsó karakterként, illetve nem egymás után használva.

Ha valaki az Ön e-mail listájára jelentkezne ezen különleges karakterek bármelyikével vagy egy sorával, a legtöbben megkérdőjeleznénk, hogy valami nincs rendben, és tévednénk - a jelenlegi egyezmény szerint ezek mind engedélyezettek.

A regex nem ellenőriz semmit a szintaxison kívül

A fejlesztőket talán csak az érdekli, hogy érvényesnek tűnő címeket kapjanak egy űrlapon keresztül, de minket nem. Nekünk tudnunk kell:

  • Létezik a domain?
  • Van MX rekord, amely bizonyítja, hogy a domainnek van levelezőszerver?
  • Van az e-mail címnek működő e-mail fiókja?

Bármelyik kérdésre, amelyikre nemmel válaszolunk, mi, marketingesek is kemény nemmel válaszolunk. A Regex nem ellenőrzi ezeket - csak egy erre a célra kifejlesztett e-mail validáló eszköz fogja ezeket a piros zászlókat előhúzni.

Nem szúrja ki az ideiglenes és eldobható címeket.

E-mail marketingesként egy másik dolog, amivel mi is tisztában vagyunk, hogy rengeteg felhasználó hoz létre hamis ideiglenes fiókokat, hogy kihasználjon egy ajánlatot, promóciót vagy más helyzetet. Ez egy egyszerű módja annak, hogy elkerüljék, hogy a meglévő e-mail fiókjukat túlzsúfolják, vagy hogy olyan információkat adjanak ki magukról, amelyeket nem akarnak.

Egyszeri megoldásként könnyen beállíthat egy ideiglenes vagy eldobható e-mail címet. Ezek a címek gyakran a beállításukat követő 10-15 percen belül eltűnnek, így hihetetlenül alkalmasak a célra.
A Regex ezeket nem ellenőrzi. Az ideiglenes és eldobható e-mail címek átmennek a regex érvényességi teszteken.

Hogyan állítana be egy e-mail regex javascriptet?

Ha egy ügyes kezű fejlesztő vagy, valószínűleg nincs szükséged a mi alapvető ismereteinkre, hogy elmondjuk, hogyan, de azoknak, akiknek van némi tapasztalatuk a kódolásban, valahogy így kell kinéznie:

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("Ez nem érvényes e-mail cím");

return false;

}

}

Az a rész, amelyik a nehéz munkát végzi, az a var mailformat vonal. A hosszú kódsor végrehajtása és karakterei határozzák meg, hogy mi engedélyezett és mi nem.

Felismeri az egyszerű dolgokat: a-z, A-Z, 0-9, majd a speciális karakterek az első, helyi szakaszban. A +@ diktálja a helyi és a tartományi elválasztót. A @ után egy újabb utasítássorozat következik arról, hogy mi a megengedett a domain szekcióban.

Ha sokkal mélyebb betekintést szeretnél kapni abba, hogy mi kell egy regex validátor megvalósításához, akkor látogass el az absztrakt oldalra. Van egy igazán jó útmutatójuk arról, hogy pontosan mi is kell hozzá, és szakértők, ha mindenféle API-kiegészítésről és -beépítésről van szó.

Ha egy munkát érdemes elvégezni, akkor azt érdemes jól elvégezni - így a lehető legjobban érvényesítse a listáit.

Csak egy módon lehet megbizonyosodni arról, hogy az e-mail listák prémium állapotban vannak, mégpedig úgy, hogy egy erre a célra kifejlesztett e-mail validáló eszközt használ - mint például a Kidobó.

A regex-érvényesítés felelős lehet azért, hogy hamis e-mail címek kerülhessenek be az Ön e-mail listáira, és az érvényesek blokkolására is sor kerülhet. Ha hitelesítési módszer hozzáadásáról van szó online űrlapjaihoz vagy adatgyűjtési módszereihez, az érvényesítés más, robusztusabb formáit javasoljuk.

Végső soron az e-mail listák egy olyan platformon keresztül történő futtatása, mint a Bouncer, messze a legjobb módja annak, hogy a listák tiszták és egészségesek, a visszalépési arányok alacsonyak, a kézbesíthetőség magas, a feladói pontszám pedig csúcsformában legyen.

Email üzenet Regex GYIK

Mi egy egyszerű regex az e-mail érvényesítéshez?

Egy egyszerű regex (reguláris kifejezés) az e-mail érvényesítéshez egy olyan karaktersorozat, amely az e-mail címek keresési mintáját határozza meg. Ezzel ellenőrizhető, hogy egy karakterlánc megfelel-e az e-mail cím szabványos formátumának. Fontos azonban megjegyezni, hogy egy egyszerű regex nem biztos, hogy minden érvénytelen e-mail címet elkap, és néhány nem szabványos e-mail formátumot átengedhet.

Hogyan segít az e-mail regex az érvénytelen e-mail címek kiszűrésében?

Az e-mail regexet arra használják, hogy a bemeneti karakterláncot (a felhasználó által megadott e-mail címet) egy meghatározott formátummal egyeztessék. Ha az e-mail cím nem felel meg ennek a formátumnak, akkor az érvénytelennek minősül. Ez segíthet a gépelési hibák megelőzésében, az adatok konzisztenciájának biztosításában és bizonyos típusú injekciós támadások elleni védelemben.

Mi az a szóköz karakter az e-mail regex kontextusában?

Az e-mail regexben a whitespace karakter olyan karaktert jelent, amely üres helyeket, például szóközöket, tabulátorokat vagy sortöréseket jelöl. Az e-mail címekkel összefüggésben a szóköz karakterek általában nem engedélyezettek, és jelenlétük érvénytelenné teszi az e-mail címet.

Mi az összetett e-mail regex?

Az összetett e-mail regex egy részletesebb és pontosabb szabályos kifejezés, amelyet e-mail érvényesítésre használnak. Figyelembe veheti az e-mail címek különböző aspektusait, például a tartományneveket, a nem latin karaktereket és az egyes karakterek megjelenésére vonatkozó különleges szabályokat. Bár alaposabb érvényesítést biztosít, nagyobb kihívást jelenthet a bevezetése és karbantartása.

Hogyan kezeli az e-mail regex a nem latin karaktereket és az Unicode-ot?

A nem latin betűs karakterek és az Unicode kezelése az e-mail regexben összetett lehet. Néhány e-mail rendszer lehetővé teszi a Unicode vagy a nem latin nyelvű e-mail címek használatát, de ezek nem mindenhol támogatottak. Egy összetett e-mail regex tartalmazhat karakterosztályokat a nem latin karakterek megfeleltetésére, de elengedhetetlen, hogy tisztában legyen az adott e-mail rendszer speciális követelményeivel és korlátaival, amellyel dolgozik.

Mi a szerepe a karakterosztályoknak az e-mail regexben?

A karakterosztályok az e-mail regexben olyan karakterek halmazát határozzák meg, amelyek a bemeneti karakterlánc bármelyik karakterével megegyezhetnek. Például az [a-z] karakterosztály minden kisbetűs angol betűre illik. A karakterosztályok felhasználhatók az e-mail cím különböző részeihez tartozó érvényes karakterek meghatározására.

Mik a korlátok az e-mail regex e-mail érvényesítéshez?

Bár az e-mail regex sok gyakori hibát képes kiszűrni az e-mail címekben, nem teljes érvényesítési módszer. Néhány érvénytelen cím még mindig átmehet a regex ellenőrzésen, és néhány érvényes cím is megbukhat, különösen, ha kevésbé gyakori formátumokat vagy karaktereket használnak. Az alapos e-mail érvényesítéshez gyakran ajánlott e-mail érvényesítési szolgáltatásokat igénybe venni, vagy megerősítő e-mailt küldeni a megadott címre.

Menj a mélyreható e-mail ellenőrzéshez, menj a Bouncerhez