Skip to main content
 首页 » 编程设计

c#之如何使用正则表达式处理长电子邮件地址

2024年02月05日29kuangbin

<分区>

我有以下用于电子邮件验证的正则表达式:

private const string ValidEmailRegexPattern = @"^(?:[^@\s\\(),:;<>[\]""]+|(?:(?:^|\.)""(?:[^\r\\"";]|(?:\\[\\""]))*"")+)+(?<=^.{1,64})@[^\s~!@#$%^&*()=+_{}\|;,`'""?<>]{1,256}$"; 
 
public static bool IsValidEmail(string email) 
{ 
     return !string.IsNullOrWhiteSpace(email) && ValidEmailRegex.IsMatch(email); 
} 

但是当输入是有效的电子邮件时它会被卡住,但具有最大有效长度(254 个符号),如下所示:

"123...@gmail.com" - 254 符号,包括 244 数字和 @gmail.com。

如何更改我的正则表达式?我希望我的程序可以处理那种类型的电子邮件地址。