【发布时间】:2021-05-06 08:42:46
【问题描述】:
我被要求编写一个 JS 代码来验证具有以下条件的电子邮件:
电子邮件:包含一个有效的电子邮件地址(如果电子邮件地址的格式为
[name]@[domain]; [name],则认为该地址是有效的,由字母(a to z, both lower and upper cases)、数字和点组成;但是,两个点不能并排放置不能位于[name]的开头或结尾;[name]的长度至少为3;[domain]也由字母、数字和点组成;但是,至少应该有一个点在[ domain]; 类似于[name],两个点不能相邻,点不能位于[domain]的开头或结尾;最后,[domain]在最后一个点之后的部分只包含字母最小长度为 2,最大长度为 5;有效电子邮件地址示例:123@1.me, 1.2.3@domain.name, this.is.my.email@sub.sub.123.main; examples of invalid email addresses: .dot.at.the.beginning@test.com, name@domainnamewithoutdot, another@last.part.consists.num.b3r, there.is space@domain.name).
我曾尝试研究不同的正则表达式并且能够想出这个:
/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]{3,}+@[a-zA-Z0-9-]+(?:[A-Z0-9-]+\.)+[A-Z]{2,5}$/
不符合要求。我对 JS 还是很陌生,我的老师也不太擅长教学。所以我真的很感激一些关于我的代码有什么问题的建议/提示。
【问题讨论】:
标签: javascript