正则表达式,而不字符验证电子邮件地址

问题描述:

我需要一个正则表达式,将检查(如电子邮件就像[email protected]正则表达式,而不字符验证电子邮件地址

  • 电子邮件必须@.(必须同时)我指的是整个字符串必须包含@和至少一个点。

  • 电子邮件的第一个字必须1+炭

  • 之间@和域名。必须是1 +焦炭

  • TLD必须2+焦炭

我做正则表达式像[email protected]+\.,但它不是一个,我知道。我在正则表达式中很糟糕,因为我很少使用它。

任何人都可以帮助我吗?

+1

http://*.com/questions/46155/validate-email-address-in-javascript?rq=1 –

+1

'\ S + @。+ \。\ S +'应该更好 – anubhava

+0

@TheOneandOnlyChemistryBlob,但这个例子不检查域名是否有2+字符 – Matej

目前还不清楚您是在某段文字的中间匹配电子邮件,还是匹配已提取的字符串。我假设是后者,并且锚固在比赛开始和行末...

/^[email protected]+\.[^.]{2,}$/ 

regex railroads

附:使用正则表达式来验证电子邮件是复杂的:http://www.regular-expressions.info/email.html

+0

用户在注册期间定期发送电子邮件。本地验证。 – sandalone

+0

你的正则表达式基本上是无用的。它匹配'@@@@@@@@。@@'例如 – Bohemian

+0

@Bohemian是的 - 问题并没有指出这是一个问题。如脚注所示,电子邮件验证非常复杂。我记得在爱尔兰使用角度js电子邮件验证,并且它不允许在名称中使用''',所以这是很大一部分人无法使用的电子邮件。越多的情况下,regex越复杂,直到它非常复杂,你又想回到简单的东西。另外,今天什么是无效或不可行的电子邮件,明天可能会生效。在我发送的链接中有一段关于权衡的部分。 –