email正则表达式更改

今天拿到了传说中有1G大的Gmai,确实很好用速度极快,没有了传统的收件夹,取了代之的是labels ,用户自己设定labels后加上邮件过滤设定,就成了邮件自动分练功能,逻辑上,用户名+labels@gmail.com,"labels"可以自己取名,就可以达到无数个E-mail地址,这些地址同时指向用户名@gmail.com

我在外面测试:能过163邮箱向用户名+labels@gmail.com,邮件正常到达,而且按照事先的过虑设定被自动分类到labels文件夹下(其实并非文件夹)。也就是说传统的E-mail地址中不允许有“+”的规则已经被打破,所以很多注删流程中的E-mail验证也也需要更新一下。

 

这几天自己看了.net,下面是自己修改的Email验证的正则表达式:


合法E-mail地址:
1. 必须包含一个并且只有一个符号“@”
2. 第一个字符不得是“@”或者“.”
3. 不允许出现“@.”或者.@
4. 结尾不得是字符“@”或者“.”

5. 允许“@”前的字符中出现“+”
6. 不允许“+”在最前面,或者“+@”

正则表达式如下:
-----------------------------------------------------------------------
^(/w+((-/w+)|(/./w+))*)/+/w+((-/w+)|(/./w+))*/@[A-Za-z0-9]+((/.|-)[A-Za-z0-9]+)*/.[A-Za-z0-9]+$
-----------------------------------------------------------------------

字符描述:
^ :匹配输入的开始位置。
/:将下一个字符标记为特殊字符或字面值。
* :匹配前一个字符零次或几次。
+ :匹配前一个字符一次或多次。
(pattern) 与模式匹配并记住匹配。
x|y:匹配 x 或 y。
[a-z] :表示某个范围内的字符。与指定区间内的任何字符匹配。
/w :与任何单词字符匹配,包括下划线。
$ :匹配输入的结尾。 

### JavaScript 正则表达式验证 Email 格式 为了确保电子邮件地址的有效性和格式正确,在 JavaScript 中可以使用如下正则表达式来实现这功能: ```javascript function validateEmail(email) { const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; return emailRegex.test(String(email).toLowerCase()); } ``` 此方法定义了一个名为 `validateEmail` 的函数,该函数接收一个参数 `email` 并返回布尔值表示邮件地址是否有效。这里使用的正则表达式的含义为:^[^1] - 开头部分 `[a-zA-Z0-9._%+-]+`: 表示本地部分允许字母、数字以及特殊符号(如点`.`下划线`_`百分号`%`加号`+`减号`-`) 次或多次。 - 接着是 `@` 符号分隔符。 - 域名部分 `[a-zA-Z0-9.-]+`: 可以由大小字母、数字、连字符 `-` 或者点组成的串字符构成域名主体。 - 结束部分 `\.[a-zA-Z]{2,}`: 要求顶级域至少有两个以上的字母长度。 对于非法字符限制输入的情况,可以通过修改上述正则表达式中的字符集部分排除特定字符。例如要阻止用户输入某些特殊字符如感叹号 `!`, @ 符号本身不应该被过滤因为它是邮箱格式的部分,其他如 `#¥%……&*` 等,则可以在相应位置调整字符集合。 另外需要注意的是当在 HTML 文档内嵌入此类脚本时应确保获取到正确的 DOM 元素并读取其 value 属性作为待检测字符串传递给验证逻辑[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值