Momwe Mungatsimikizire Imelo Adilesi Ndi Mawu Okhazikika (Regex). Zitsanzo za HTML5, PHP, C #, Python, ndi Java Code.
Pafupifupi chinenero chilichonse cha mapulogalamu chimathandizira mawu okhazikika masiku ano. Ngakhale madivelopa ena samawakonda, ndi njira yabwino kwambiri popeza amagwira ntchito ngati kutsimikizira mwachangu ndi ma seva ochepa. Ma adilesi a imelo ndi chitsanzo chabwino… komwe amatha kufufuzidwa mosavuta kuti atsimikizire kuti adasanjidwa bwino.
Kumbukirani kuti kutsimikizira sikuli kutsimikizira. Kutsimikizira kumangotanthauza kuti deta yomwe yadutsa ikutsatira ndondomeko yokhazikika yomwe imamangidwa bwino. Zinthu zina zosangalatsa za ma adilesi a imelo omwe atha kuphonya pakutsimikizika.
Kodi Imelo Adilesi Ndi Chiyani?
Adilesi ya imelo, monga imatanthauziridwa ndi Fomu ya Mauthenga Paintaneti (RFC 5322), ili ndi zigawo ziwiri zazikulu: gawo la m'deralo ndi gawo la dera. Gawo lapafupi limabwera patsogolo pa @
chizindikiro ndi gawo la domain limabwera pambuyo pake. Nachi chitsanzo cha imelo adilesi: example@example.com
, kumene example
ndi gawo la komweko ndi example.com
ndi gawo la domain.
- Local - Gawo lapafupi la imelo litha kukhala ndi zilembo za alphanumeric, nthawi, ma hyphens, kuphatikiza zizindikiro, ndi pansi. Amagwiritsidwa ntchito kuzindikiritsa bokosi la makalata kapena akaunti pa seva.
- ankalamulira - Gawo lachidziwitso la imelo limakhala ndi dzina lachidziwitso ndi malo ake apamwamba (TLD). Dzina lachidziwitso ndi mndandanda wa zilembo zomwe zimasonyeza seva yomwe imakhala ndi akaunti ya imelo. TLD imatchula mtundu wa bungwe lomwe limayang'anira dzina lamalo, monga nambala yadziko (mwachitsanzo
.uk
) kapena domain yapamwamba (mwachitsanzo.com
,.org
).
Ngakhale ili ndi gawo lofunikira la adilesi ya imelo, malamulo azomwe amapanga imelo yovomerezeka ndizovuta.
Kodi Adilesi Ya Imelo Ingakhale Yautali Bwanji?
Ndidayenera kukumba lero kuti ndiupeze, koma kodi mumadziwa kutalika kwa imelo? Idagawika m'magawo ... Local@Domain.com.
- Zamderali zitha kukhala zilembo 1 mpaka 64.
- Dambwe limatha kukhala zilembo 1 mpaka 255.
Izi zikutanthauza kuti - mwaukadaulo - iyi ikhoza kukhala imelo yovomerezeka:
loremaipsumadolorasitaametbaconsectetueraadipiscin
gaelitanullamc@loremaipsumadolorasitaametbaconsect
etueraadipiscingaelitcaSedaidametusautanisiavehicu
laaluctuscaPellentesqueatinciduntbadiamaidacondimn
tumarutrumbaturpisamassaaconsectetueraarcubaeuatin
ciduntaliberoaaugueavestibulumaeratcaPhasellusatin
ciduntaturpisaduis.com
Yesani kuyika izo pabizinesi khadi! Chodabwitsa ndichakuti, ma imelo ambiri amangopezeka zilembo 100 pa intaneti… zomwe sizolondola mwaukadaulo. Mawu ena okhazikika omwe amagwiritsidwa ntchito kutsimikizira ma adilesi a imelo amayang'ananso dera lapamwamba la manambala atatu, monga .com; komabe, palibe malire kutalika kwa madera apamwamba (mwachitsanzo. Martech Zone ili ndi manambala 4 - .zone).
Mawu Otsimikizika
RegEx ndi njira yabwino yoyesera imelo chifukwa cha dongosolo lake. Mawu okhazikika amagwiritsidwa ntchito kwambiri m'zilankhulo zopanga mapulogalamu ndi okonza zolemba ndipo nthawi zambiri amaphatikizidwa m'malaibulale okonza zolemba kapena ma frameworks. Amathandizidwa ndi zilankhulo zambiri zamapulogalamu, kuphatikiza Python, Java, C #, ndi JavaScript, pakati pa ena.
Kuyimitsidwa kwa adilesi ya imelo ndizovuta kwambiri kuposa momwe mukudziwira. Mukalembedwa molingana, nayi mawu enieni a imelo adilesi, mbiri ku Regexr:
[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?
Mafotokozedwe anthawi zonsewa amafanana ndi ma adilesi a imelo, kuphatikiza zilembo za alphanumeric, nthawi, ma hyphens, kuphatikiza zizindikiro, ndi ma underscores mu dzina lolowera, kenako @
chizindikiro, chotsatiridwa ndi dzina lachidziwitso. Ndikofunika kuzindikira kuti chitsanzochi chidzangoyang'ana mtundu wa adilesi ya imelo osati yeniyeni kukhalako a adilesi ya imelo.
HTML5 Ikuphatikizanso Kutsimikizika kwa Mapangidwe a Imelo
Njira yosavuta yowonetsetsa kuti imelo ndi yovomerezeka molingana ndi muyezo ndikugwiritsa ntchito gawo la imelo la HTML5:
<input type='email' name='email' placeholder='name@domain.com' />
Pali nthawi zina, pomwe pulogalamu yanu yapaintaneti idzafunabe kutsimikizira adilesi ya imelo mumsakatuli ikalowa komanso ikatumizidwa ku seva yanu.
Regex Kwa Adilesi Yoyenera ya Imelo mu PHP
Ndi anthu ochepa omwe amazizindikira, koma PHP tsopano ili ndi mulingo wa RFC womwe umapangidwira ntchito yotsimikizira zosefera.
if(filter_var("name@domain.com", FILTER_VALIDATE_EMAIL)) {
// Valid
}
else {
// Not Valid
}
Regex Kwa Adilesi Yoyenera ya Imelo mu C #
Nayi kutsimikizika koyambira kwa imelo mu C#
using System;
using System.Text.RegularExpressions;
public class EmailValidator
{
public static bool IsValidEmail(string email)
{
string pattern = @"^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$";
return Regex.IsMatch(email, pattern);
}
}
Kugwiritsa ntchito njira iyi moyenera:
string email = "example@example.com";
if (EmailValidator.IsValidEmail(email))
{
Console.WriteLine(email + " is a valid email address.");
}
else
{
Console.WriteLine(email + " is not a valid email address.");
}
Regex Kwa Adilesi Yoyenera ya Imelo ku Java
Nayi kutsimikizika koyambira kwa imelo ku Java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class EmailValidator {
private static final Pattern VALID_EMAIL_ADDRESS_REGEX =
Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);
public static boolean isValidEmail(String email) {
Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(email);
return matcher.find();
}
}
Kugwiritsa ntchito njira iyi moyenera:
String email = "example@example.com";
if (EmailValidator.isValidEmail(email)) {
System.out.println(email + " is a valid email address.");
} else {
System.out.println(email + " is not a valid email address.");
}
Regex Kwa Adilesi Yoyenera Imelo ku Python
Nayi kutsimikizika koyambira kwa imelo ku Python:
import re
def is_valid_email(email):
pattern = re.compile(r'^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$')
return True if pattern.match(email) else False
Kugwiritsa ntchito njira iyi moyenera:
email = "example@example.com"
if is_valid_email(email):
print(f"{email} is a valid email address.")
else:
print(f"{email} is not a valid email address.")
Regex Kwa Adilesi Yoyenera ya Imelo mu JavaScript
Simuyenera kukhala ndi mulingo wovuta kwambiri wowunikira ma adilesi a imelo. Nayi njira yosavuta kugwiritsa ntchito JavaScript.
function validateEmail(email)
{
var re = /\\S+@\\S+/;
return re.test(email);
}
Zachidziwikire, izi siziri mulingo wa RFC, chifukwa chake mungafune kutsimikizira gawo lililonse lazambiri kuti muwonetsetse kuti ndilovomerezeka. Mawu okhazikika awa agwirizana ndi pafupifupi 99.9% ya ma adilesi a imelo kunja uko. Sizinali mulingo woyenera, koma ndizothandiza pama projekiti aliwonse.
function validateEmail(email)
{
var re = /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/;
return re.test(email);
}
Kuyamikira zina mwa zitsanzozi kumapita HTML.form.guide.