通用邮箱正则表达式

3 篇文章 0 订阅

找了一些门户网站的邮箱格式:

新浪:4-16个字符,可使用英文小写、数字、下划线,下划线不能在首尾。

搜狐:4-16位,数字、小写字母、点、减号或下划线,小写字母开头。

腾讯:由3-18个英文、数字、点、减号、下划线组成。
网易:6~18个字符,可使用字母、数字、下划线,需以字母开头。
谷歌:您可以使用字母、数字和英文句点,请勿使用除字母 (a-z)、数字和英文句号外的其他字符。
央视:6~20个字符,包括英文字母(小写)数字-_,首尾字符须为字母或数字,且邮箱名不能为纯数字。

TOM:  6-18个字符,仅支持字母、数字及“.”、”-”、”_”,不能全部数字或下划线。


得出通用的邮箱标准: 长度不限,可以使用英文(包括大小写)、数字、点号、下划线、减号,首字母必须是字母或数字; 

比如有以下邮箱格式:

xxxyyy@zzz.com.cn; 其中"x"可以是纯数字,也可以是纯字母,也可以是数字与字母的组合;
"y"可以是纯数字,可以是纯字母,也可以是数字、字母和指定字符的组合;
"z"可以是纯数字,可以是纯字母,也可以是数字、字母和指定字符"-"的组合, 但不能以字符"-"开头和结尾;
最后的.com和.cn是可以互换位置的,然后也可以只有.com没有.cn或只有.cn没有.com

得出通用的邮箱标准java正则表达式:
email.matches("^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-z]{2,}$")

java实现得出通用的邮箱校验方法:
/**
* 检查邮箱是否合法
*/
private static Boolean checkEmail(String email) {
if (email.matches("^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-z]{2,}$")) {
return true;
} else {
return false;
}

}

js 实现得出通用的邮箱校验方法:
    <script>
function sendVerifyMail(){
  var _url = global.basePath + "oth/find_password_mail.do";
  var reg = new RegExp("^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-z]{2,}$"); 
  var email = $('#email').val();
  if(email == ''){
 dialogMessage("邮箱不能为空!");
return false;
}else if(!reg.test(email)){
dialogMessage("邮箱格式不正确,请重新输入!");
return false;
}else{
$.post(_url,{'email':email},function(result){
var obj = $.parseJSON(result);
dialogMessage(obj.message);
});
}
}       
</script>
  • 8
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
### 回答1: 下面是一个比较通用的 JavaScript 邮箱正则表达式: ```javascript const emailRegEx = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}$/; ``` 这个正则表达式的含义是: - `^`:表示匹配输入字符串的开始位置。 - `[A-Za-z0-9._%+-]+`:表示匹配由大小写字母、数字、以及一些特殊字符(`.`、`_`、`%`、`+`、`-`)组成的字符串,至少匹配一次。 - `@`:表示匹配 `@` 字符。 - `[A-Za-z0-9.-]+`:表示匹配由大小写字母、数字、以及连字符(`-`)和点(`.`)组成的字符串,至少匹配一次。 - `\.`:表示匹配一个点字符。 - `[A-Z|a-z]{2,}`:表示匹配大小写字母,长度至少为 2。 - `$`:表示匹配输入字符串的结束位置。 这个正则表达式可以匹配类似于 `example@example.com` 和 `example123@gmail.com` 这样的邮箱地址。 ### 回答2: JavaScript邮箱通用正则表达式可以用来验证用户输入的电子邮件地址是否符合邮件格式的要求。 邮箱地址通常包含两部分:用户名和域名。用户名部分由字母、数字、下划线、点号以及加号组成,且至少包含一个字母或数字,可能包含一个以上的点号或加号。域名部分由域名标签(由字母、数字、下划线和连字符组成)和顶级域(如.com、.net等)组成,域名标签之间由点号连接。 根据上述规则,可以使用以下正则表达式来验证邮箱地址: ```javascript var emailRegex = /^[a-zA-Z0-9]+[_.a-zA-Z0-9+]*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,})$/; ``` 解析上述正则表达式: - `^` 表示匹配字符串的起始位置。 - `[a-zA-Z0-9]+` 表示至少一个字母或数字。 - `[_.a-zA-Z0-9+]*` 表示0个或多个下划线、点号或加号。 - `@` 表示匹配邮箱地址中的@符号。 - `[a-zA-Z0-9-]+` 表示至少一个字母、数字或连字符。 - `(\.[a-zA-Z0-9-]+)*` 表示0个或多个由点号连接的字母、数字或连字符的域名标签。 - `(\.[a-zA-Z]{2,})` 表示顶级域,至少包含两个字母。 - `$` 表示匹配字符串的结束位置。 通过对用户输入的邮箱地址使用上述正则表达式进行验证,可以确保输入的邮箱地址符合基本的邮件格式要求。 ### 回答3: JS邮箱通用正则表达式可以使用以下正则表达式来验证电子邮件地址的格式: ```javascript var emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; ``` 其中 /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/ 是一个正则表达式,用于匹配电子邮件地址的格式。这个正则表达式的含义如下: - ^ 表示匹配字符串的开头 - [a-zA-Z0-9._%+-] 匹配任意一个字母、数字、下划线、百分号、加号、减号或者点号 - + 表示匹配前面的字符出现一次或多次 - @ 匹配一个@ - [a-zA-Z0-9.-] 匹配任意一个字母、数字、点号或者减号 - + 表示匹配前面的字符出现一次或多次 - \. 匹配一个点号 - [a-zA-Z]{2,} 匹配任意两个或两个以上的字母 - $ 表示匹配字符串的结尾 这个正则表达式可以用来验证电子邮件地址的格式是否正确,它可以满足大多数常见的电子邮件地址格式,如 example@example.com、john.doe@example.co.uk、name1234@example-mail.com 等。 使用上述正则表达式,我们可以通过 JavaScript 代码来验证一个字符串是否为有效的电子邮件地址,例如: ```javascript var email = "example@example.com"; if (emailRegex.test(email)) { console.log("邮箱地址格式正确"); } else { console.log("邮箱地址格式不正确"); } ``` 以上代码将会输出 "邮箱地址格式正确",表示电子邮件地址的格式是正确的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值