接受连续点的电子邮件的正则表达式

2024-03-17

这是我的正则表达式

((^[a-zA-Z0-9]?[^<>()\[\]\\,:\s@"]*(\.[^<>()\[\]\\.,;:\s@"]+)*[a-zA-Z0-9])|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))

例如,上述正则表达式接受电子邮件本地部分中的两个连续点[电子邮件受保护] /cdn-cgi/l/email-protection电子邮件是否有效,工作正常,但是[电子邮件受保护] /cdn-cgi/l/email-protection这里将其视为有效电子邮件,但不是有效电子邮件。请帮助提取上述正则表达式,提前致谢。


此正则表达式验证电子邮件地址,并确保不使用连续的点:

var email1 = '[email protected] /cdn-cgi/l/email-protection';
var email2 = '[email protected] /cdn-cgi/l/email-protection';
var re = /^[\w%\+\-]+(\.[\w%\+\-]+)*@[\w%\+\-]+(\.[\w%\+\-]+)+$/;
var val1 = re.test(email1);
var val2 = re.test(email2);
console.log(email1 + ' ==> ' + val1);
console.log(email2 + ' ==> ' + val2);

控制台输出:

[email protected] /cdn-cgi/l/email-protection ==> true
[email protected] /cdn-cgi/l/email-protection ==> false

正则表达式的解释:

  • ^...$-- 开头和结尾的锚点
  • [\w%\+\-]+-- 一个或多个单词字符以及除点之外的其他有效字符
  • (...)*-- 使里面的内容可选(零次或多次出现)
  • (\.[\w%\+\-]+)*-- 出现零次或多次点,后跟有效字符
  • @ -- an @ sign
  • [\w%\+\-]+(\.[\w%\+\-]+)+-- 后面是相同的序列,只不过需要至少出现一次

请注意,基于实际 RFC-822 的正确验证非常复杂。这是一个包含 6000 多个字符的正则表达式,可以执行此操作:http://www.ex-parrot.com/~pdw/Mail-RFC822-Address.html http://www.ex-parrot.com/%7Epdw/Mail-RFC822-Address.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

接受连续点的电子邮件的正则表达式 的相关文章

  • 获取单词中重复次数最多的字母的数量

    我正在尝试计算单词中重复次数最多的字母的数量 function GreatestCount str var count for var i 0 i
  • 在 HTML SELECT 标记中禁用键盘

    我想禁用 HTML SELECT 标记的键盘 以便用户只能使用鼠标来选择选项 我试过了event cancelBubble true on the onkeydown onkeyup and onkeypress没有运气的事件 有任何想法吗
  • 了解执行模型和事件循环

    我读过很多关于JavaScript单线程执行模型 事件循环和事件队列的文章 但有一件事尚不清楚 我创建了一个小提琴来说明我的问题 http jsfiddle net yzpmf67f http jsfiddle net yzpmf67f
  • Atom“自动完成”不起作用

    因此 当您安装 Atom 时 autocomplete 会随其一起提供 并且默认情况下处于启用状态 当我编写代码时 什么也没有显示 为什么 是否需要配置任何文件才能正常工作 In autocomplete plus settings pag
  • IE 9 的子元素不透明,我无法使用 captify 阻止它

    好的 我正在使用一段名为 Captify 的 javascript 它为您的图像添加了一个带有文本的小弹出窗口 适用于所有接受 IE9 的浏览器 IE9 会淡化弹出 div 中的所有内容 我已阅读其子元素问题 但无法修复它 由于在网上任何地
  • GeoJSON 要素坐标未显示在 OpenLayers 地图上

    我正在尝试显示一个GeoJSON地图上的多边形 我使用了 OpenLayers 提供的示例以及以下数据 但仅显示第二个多边形 var geojsonObject type FeatureCollection crs type name fe
  • 嵌套对象的 AJV 模式验证

    函数返回的对象看起来像这样 answer vehicle type 1 message Car model VW color red 答案 对象始终存在 其他字段基于 vehicle type E g 如果vehicle type 1 则有
  • HTML5 拖放 - 没有透明度?

    当我将一个元素拖放到页面上时 该元素会变成 幻影 基本上它获得了一些透明度值 有什么办法可以做到吗opacity 1 看来是做不到了 拖动的元素被放入具有自己的不透明度 低于 1 的容器中 这意味着虽然您可以降低拖动元素的不透明度 但您无法
  • 避免 AngularJS 部分视图在 IE 中缓存

    我正在开发一个 ASP NET MVC 应用程序 它也有一些 angularJS 我有一个主页 其中有不同的选项卡 当您单击它们时 它们会加载角度部分视图 主页是这样的 div class widget div div class widg
  • 将服务连接到现有的流星帐户

    我正在设置一个流星应用程序 其中涉及使用用户名和密码进行注册 然后希望将该帐户与 Facebook 和 Twitter 连接起来 我只需使用帐户包即可轻松启动并运行第一部分 但是当我有一个登录用户调用 Meteor loginWithFac
  • 日期时间的自定义 JavaScriptConverter?

    我有一个对象 它有一个 DateTime 属性 我想通过 AJAX JSON 将该对象从 ashx 处理程序传递回网页 我不想使用第 3 方控件 当我这样做时 new JavaScriptSerializer Serialize DateT
  • 替换 Javascript 中的引号?

    对于我正在制作的网络应用程序 我将收到文本字符串 其中偶尔包含引号 因为我接下来要 document writing 字符串 所以需要将它们更改为撇号或转义 我该怎么做 因为当我尝试时它似乎不起作用 特别是我认为因为字符串的引号阻止了脚本的
  • HTML if 语句在 CDN 失败时加载本地 JS/CSS

    当从 CDN 或任何外部服务器加载 CSS JS 文件时 有可能 即使概率很低 由于外部故障而丢失该文件 在这种情况下 html 页面将因缺乏适当的 CSS 和 JS 而被损坏 有没有一种实用的方法可以在 CDN 故障时加载本地版本 IF
  • 反转二进制网络

    如何反转二元方程 以便找到哪些输入将产生给定的输出 Example Inputs i0 through i8 Outputs o0 through o8 Operators XOR AND 二元方程 1 i0 1 i1 0 i2 1 i3
  • 用于客户端存储和服务器端同步的javascript库[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个 javascript 库 它可以让我将数据存储在客户端数据库中 并在后台自动将数据库同
  • CKEditor TypeError:c[a] 在 CodeIgniter 中未定义

    我正在尝试在基于 codeigniter 的网站中安装 CKEditor 并且我已按照本教程进行操作 Codeigniter 教程中的 CKEditor http nukium com developpement php framework
  • Hudson 和电子邮件通知

    我可以覆盖每个作业的 Hudson 设置 系统管理员电子邮件地址 吗 阅读了一些源代码http sorcerer jenkins ci org http sorcerer jenkins ci org and hudson tasks Ma
  • 垃圾收集器不适用于 NodeJS / Chrome 中的类型化数组

    我最初将其记录为原项目中的一个问题 https github com nodejs help issues 3590 它立即转移到帮助主题 没有很好的解释 所以现在我想在这里提问 如果我们在 NodeJS v14 v16 v17 中运行以下
  • 禁用 Materialise Carousel 上的触摸

    看起来以前没有人问过这个问题 因为我几乎在互联网上寻找一个非常简单的答案 如何禁用在物化轮播上向左 向右滑动的功能 在 Materialize js 添加 编辑 var allowCarouselDrag true value functi
  • 截断段落前 100 个字符并隐藏段落的其余内容,以通过更多/更少链接显示/隐藏其余内容

    我有一个超过 500 个字符的段落 我只想获取最初的 100 个字符并隐藏其余部分 我还想在 100 个字符旁边插入 更多 链接 单击更多链接时 整个段落应显示并编辑文本 更多 到 更少 单击 更少 时 它应切换行为 段落是动态生成的 我无

随机推荐

  • Cython 和 Python 项目测试驱动开发和 .pyx 文件结构建议

    构建一个的最佳方式是什么python cython项目 以便我可以对驻留在其中的代码进行单元测试 pyx文件 是否可以就地对该代码进行单元测试 或者重构可以让我以另一种方式实现这一目标 我是新来的cython但有 Python TDD mo
  • EnableAutoConfiguration spring 注解如何工作?

    I am no fan of gross over abstractions And i think Spring has committed a major felony 但如果有人可以解释 自动 配置背后的算法 我这次愿意忽略它 看看s
  • 检查Python中每行的运行时间

    我已经编写了一个 Python 脚本 但运行它所花费的时间比我预期的要长得多 并且我在脚本中没有明显的候选行占用运行时间 我可以在代码中添加任何内容来检查运行每一行需要多长时间吗 非常感谢 您尝试过通过分析运行 python 吗 pytho
  • 无法在 M1 Macbook 上启动 Cloud Run 容器

    我还没有在我的 M1 Macbook 上安装 Rosetta 安装了 Docker 和所有 deps 这甚至工作了几次 但不确定是什么突然导致了这个错误 Starting to run the app using configuration
  • 反应原生动画:滚动减慢时屏幕抖动

    我在用Animated View更改标题高度 它在 ios 中运行良好 但在 android 中 当我缓慢滚动时 整个视图都在晃动 1 首先我设置状态 this state scrollY new Animated Value 0 2 内部
  • 无需用户交互即可从服务器驱动 API 文档上传

    我正在 Django 中制作应用程序 该应用程序从表单上传文件并将其发送到谷歌驱动器 所以基本上我不知道需要用户的信息或让他们在谷歌上进行身份验证 从我们使用的快速入门指南authorize url to get code但我不需要oaut
  • 用 Java 洗牌

    我还有另一项练习要做 我确实需要帮助 我什至不知道我的 isFlush 方法是否有效 因为出于某种原因 我的套牌没有洗牌和发牌 我完全陷入困境 有人可以帮助我或指出我正确的方向或其他什么吗 这是练习 练习 12 5 本练习的目标是编写一个程
  • Express 中使用 cookie 会话保持登录选项

    我想要一个 保持登录状态 选项 例如 Gmail 提供的选项 这样 用户可以决定如果他们想在之前关闭浏览器会话后打开新的浏览器会话时保持会话打开 查看我看到的 github 问题cookie session 组件不提供更新的方法maxAge
  • 需要asp.net中的作业调度程序

    我们有一个网站 需要一个调度程序来在特定时间接收通知 电子邮件 例如 如果有人在下午 5 点设置提醒参加下午 4 45 的会议 则大约会在下午 4 45 收到电子邮件 由于此站点托管在共享服务器上 因此我们无法控制服务器来运行任何 SQL
  • 将 pdf 直接发送到打印机对话框的链接

    我尝试过以下2种方法 a class print a a Print file a 又一次尝试
  • Python 中的机械化 - 提交后重定向不起作用

    我刚刚开始在 Python 中使用 mechanize 但已经遇到了一些问题 我在 StackOverflow 和 Google 上查看过 我看到人们说文档很棒 并且应该很容易让它工作 但我想我不知道如何查找该文档 因为我所有的可以找到的代
  • [NSObject:任何对象]?' Xcode 6 beta 6 中没有名为“下标”的成员错误

    我使用下面的几行代码来获取键盘在屏幕上显示时的框架 我已经注册到UIKeyboardDidShowNotification通知 func keyboardWasShown notification NSNotification var in
  • 远程 RPC 客户端已解除关联。可能是由于容器超过阈值或网络问题。检查驱动程序日志中是否有 WARN 消息

    我正在开发 5 节点集群 每个节点 7 个核心 每个节点 25 GB 我当前的执行使用 1 2GB 输入数据 我能知道为什么会出现以下错误吗 我使用 pyspark 数据框 spark 1 6 2 Stage 9487 gt 198 2 2
  • 使用 BFS 进行加权图

    我正在修改单源最短路径算法 在视频中 老师提到BFS DFS不能直接用于查找最短路径 in a 加权图 我想每个人都知道这一点 并说自己找出原因 我想知道为什么它不能用于加权图的确切原因 解释 是由于边缘的重量还是其他原因造成的 有人可以解
  • 每个用户轨道的日期范围重叠

    如何使用下面的代码验证每个用户的日期 当我以其他用户身份登录时 我无法创建具有相同日期的预订 我有 user id 引用表 users 中的 id 我希望能够使 date start 和 date end 仅对用户唯一 并且仍然能够与不同的
  • 在 ARM 模板中引用 KeyVault 机密失败,并显示“模板中未定义资源”

    我正在尝试在 Azure Web 应用程序的 AppConfig 部分中创建 KeyVault 引用 KeyVault 引用引用了 KeyVault 中存在的机密 该密钥属于不同资源组 因此模板中不存在 根据文档 https learn m
  • 制作可前后移动的可定制 LCG

    我将如何让 LCG 伪随机数生成器的类型 在两个方向上移动 我知道前进是 a x c m但我怎样才能扭转它呢 我使用这个 所以我可以将种子存储在地图中玩家的位置 并能够通过在 LCG 中向后和向前传播 就像某种随机数线 来生成它周围的东西
  • 在 MVP 中,谁应该处理导航?

    我相信 Presenter 是负责处理 MVP 应用程序的导航方面的人 这是真的还是有例外 我认为视图是唯一负责屏幕导航的视图 Here https medium com nbarishok on navigation in android
  • 如何使用 Python 将 png 并排放置到 HTML 表格中

    我有一个 matplotlib 图转换为 png figure new savefig figure new png bbox inches tight pad inches 0 and a styler objectreport newt
  • 接受连续点的电子邮件的正则表达式

    这是我的正则表达式 a zA Z0 9 lt gt s lt gt s a zA Z0 9 0 9 1 3 0 9 1 3 0 9 1 3 0 9 1 3 a zA Z 0 9 a zA Z 2 例如 上述正则表达式接受电子邮件本地部分中的