电子邮件验证是一次又一次出现的事情。电子邮件验证并不棘手,假设您有正确的正则表达式。不幸的是,有很多方法可以在电子邮件上执行 RegEx,而您在 Google 上找到的大部分内容通常会消除有效的电子邮件,或者更糟糕的是,根本不起作用。
有一个称为 RFC822 的标准正则表达式,它是海量的. 我不建议使用它。相反,您可以使用 RFC5322,它的继任者,它更短且更易于使用。下面的函数将验证放入其中的任何电子邮件:
const validateEmail = function(email) { const regex = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[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,}))$/ return regex.test(email); } // Returns true validateEmail('someMail@gmail.com');
注意:这是非常完整的证明,但确定电子邮件是否有效的最佳方法是向其发送电子邮件,看看会发生什么。此 RegEx 将确保您的电子邮件格式正确。