gpt4 book ai didi

javascript - 了解使用 JavaScript 进行电子邮件验证

转载 作者:数据小太阳 更新时间:2023-10-29 04:22:37 24 4
gpt4 key购买 nike

我是 JavaScript 的新手,在互联网上找到了这个验证给定电子邮件的 JavaScript 代码(代码没有问题)-

<html>
<h2>Email Validation</h2>
<script language = "Javascript">
function checkEmail(emailId) {
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(emailId)){
document.write("You have entered valid email.");
return true;
}
return false;
}

function ValidateEmail(){
var emailID=document.form.email;

if ((emailID.value==null)||(emailID.value=="")){
alert("Please Enter your Email ID")
emailID.focus()
return false
}

if (checkEmail(emailID.value)==false){
emailID.value=""
alert("Invalid Email Adderess");
emailID.focus()
return false
}
alert('valid');
return true
}
</script>

<form name="form" method="post" onSubmit="return ValidateEmail()">
Enter an Email Address : <input type="text" name="email" size="30"><br>
<input type="submit" name="Submit" value="Submit">
</form>

</html>

我对代码没有任何问题,但不知何故我无法理解正则表达式 /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/ 的意思。我不明白正则表达式的每一部分是什么意思。请赐教。

最佳答案

  1. 两个正斜杠/.../包含一个正则表达式。

  2. 前导 ^ 和尾随 $ 分别匹配输入字符串的开头和结尾。也就是说,整个输入字符串应与此正则表达式匹配,而不是输入字符串的一部分。

  3. \w+ 匹配 1 个或多个单词字符(a-z、A-Z、0-9 和下划线)。

  4. [.-] 匹配字符 。要么 -。我们需要使用 .代表 .作为 。在正则表达式中具有特殊含义。\被称为转义码,它恢复了后面字符的原始字面意义。

  5. [.-]?匹配 0 次或 1 次出现的 [.-]。

  6. 同样,\w+ 匹配 1 个或多个单词字符。

  7. ([.-]?\w+)* 匹配 0 次或多次出现的 [.-]?\w+。

  8. 子表达式\w+([.-]?\w+)* 用于匹配电子邮件中 ​​@ 符号之前的用户名。它至少以一个单词字符(a-z、A-Z、0-9 和下划线)开头,后跟多个单词字符或 .要么 -。然而,一个。 or - 后面必须跟一个单词字符(a-z、A-Z、0-9 和下划线)。即字符串不能包含“..”、“--”、“.-”或“-.”。有效字符串的示例是“a.1-2-3”。

  9. @匹配自身。

  10. 同样,子表达式\w+([.-]?\w+)* 用于匹配电子邮件域名,其模式与上述用户名相同。

  11. 子表达式 .\w{2,3} 匹配一个 .后跟两个或三个单词字符,例如“.com”、“.edu”、“.us”、“.uk”、“.co”。

  12. (.\w{2,3})+ 指定上述子表达式应出现一次或多次,例如,".com"、".co.uk"、".edu.sg "等

Reference

关于javascript - 了解使用 JavaScript 进行电子邮件验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15017052/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com