.net(正则表达式)检查EMAIL
发布时间:2020-12-14 02:18:44 所属栏目:百科 来源:网络整理
导读:using System; using System.Globalization; using System.Text.RegularExpressions; public class RegexUtilities{ bool invalid = false ; public bool IsValidEmail( string strIn) { invalid = false ; if (String.IsNullOrEmpty(strIn)) return false ;
using System; using System.Globalization; using System.Text.RegularExpressions; publicclass RegexUtilities { bool invalid = false; publicbool IsValidEmail(string strIn) { invalid = false; if (String.IsNullOrEmpty(strIn)) returnfalse; // Use IdnMapping class to convert Unicode domain names. try { strIn = Regex.Replace(strIn,@"(@)(.+)$",this.DomainMapper,RegexOptions.None,TimeSpan.FromMilliseconds(200)); } catch (RegexMatchTimeoutException) { returnfalse; } if (invalid) returnfalse; // Return true if strIn is in valid e-mail format. try { return Regex.IsMatch(strIn,21)">@"^(?("")(""[^""]+?""@)|(([0-9a-z]((.(?!.))|[-!#$%&'*+/=?^`{}|~w])*)(?<=[0-9a-z])@))" + @"(?([)([(d{1,3}.){3}d{1,3}])|(([0-9a-z][-w]*[0-9a-z]*.)+[a-z0-9]{2,17}))$",RegexOptions.IgnoreCase,TimeSpan.FromMilliseconds(250)); } catch (RegexMatchTimeoutException) { returnfalse; } } privatestring DomainMapper(Match match) { // IdnMapping class with default property values. IdnMapping idn = new IdnMapping(); string domainName = match.Groups[2].Value; try { domainName = idn.GetAscii(domainName); } catch (ArgumentException) { invalid = true; } return match.Groups[1].Value + domainName; } } publicclass Application { publicstaticvoid Main() { RegexUtilities util = new RegexUtilities(); string[] emailAddresses = { "david.jones@proseware.com",21)">"d.j@server1.proseware.com",21)">"jones@ms1.proseware.com",21)">"j.@server1.proseware.com",21)">"j@proseware.com9",21)">"js#internal@proseware.com",21)">"j_9@[129.126.118.1]",21)">"j..s@proseware.com",21)">"js*@proseware.com",21)">"js@proseware..com",21)">"js@proseware.com9",21)">"j.s@server1.proseware.com" }; foreach (var emailAddress in emailAddresses) { if (util.IsValidEmail(emailAddress)) Console.WriteLine("Valid: {0}",emailAddress); else Console.WriteLine("Invalid: {0}",emailAddress); } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |