javascript - 正则表达式不允许电子邮件中的点出现在错误的位置

标签 javascript regex validation email

我必须验证来自公司的电子邮件。正则表达式应该验证它是否来自公司并且可能来自约翰。

我的正则表达式现在看起来像这样:

/[a-z0-9.]*(john)[a-z0-9.]*@mycompany\.com/

唯一的问题是,它允许点出现在错误的位置。 我看到此电子邮件有效:

john@mycompany.com smith.john@mycompany.com john.smith@mycompany.com

但我不应该看到有效的这些:

john.@mycompany.com .john@mycompany.com

最佳答案

/^([a-z0-9][a-z0-9.]*)?(约翰)([a-z0-9.]*[a-z0-9])?@ mycompany\.com$/

这应该确保 (john) 之前/之后的字符不分别以 . 开头/结尾。

关于javascript - 正则表达式不允许电子邮件中的点出现在错误的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44658836/

相关文章:

javascript - Ember.js View 在上下文中获取隐式迭代器的值

javascript - 停止浏览器请求

RAML 文件的验证

java - 如何转义java中的某些字符

用于确定电子邮件域的 JavaScript RegEx(例如 yahoo.com)

javascript 月、日、年检查

mysql - 使用 laravel 在 MongoDB 中的唯一值验证中找不到基表

javascript - 如何在 JavaScript 中将 px 转换为 vw?

javascript - 即使它是直接复制,Bootstrap 模式也不会出现

regex - 如何使用 R 或命令行提取与文本文件中的电子邮件地址匹配的表达式?