Загрузка...

[C#] Checking Email for Validity

Thread in C# created by leprekonos May 27, 2017. 1436 views

  1. leprekonos
    leprekonos Topic starter May 27, 2017 lolzteam.net 4 Dec 23, 2016
    Функция, которая проверит E-mail адрес на валидность:

    Code
    using System.Text.RegularExpressions;
    public bool IsValidEmail(string email)
    {
    string pattern = @"^[-a-zA-Z0-9][-.a-zA-Z0-9]*@[-.a-zA-Z0-9]+(\.[-.a-zA-Z0-9]+)*\.
    (com|edu|info|gov|int|mil|net|org|biz|name|museum|coop|aero|pro|tv|[a-zA-Z]{2})$";

    Regex check = new Regex(pattern,RegexOptions.IgnorePatternWhitespace);
    bool valid = false;

    if (string.IsNullOrEmpty(email)) valid = false;
    else valid = check.IsMatch(email);

    return valid;
    }
     
  2. RaysMorgan
    RaysMorgan May 27, 2017 Че скажете 53,985 Mar 7, 2013
    leprekonos, очень плохая регулярка для email, все русские почты улетят в бэд.
     
  3. Hangover_inactive59523
    не улетят, последнее условие проверки домена пропустит русский
     
  4. RaysMorgan
    RaysMorgan May 27, 2017 Че скажете 53,985 Mar 7, 2013
    Hangover_inactive59523, хорошо, я не досмотрел, что насчёт доменных зон club, space, shop, xyz и так далее?
    Конечно, можно рассматривать этот паттерн для ****а, но для других задач он не годится
     
  5. Hangover_inactive59523
    Ну этой регуляркой можно дёргать нужные домены для заточек каких-нибудь, а как универнсальный валидатор емайла она не подойдёт
     
  6. RaysMorgan
    RaysMorgan May 28, 2017 Че скажете 53,985 Mar 7, 2013
    Hangover_inactive59523, я дергал домены через обычные функции str.Split(':'), str.Split('@') и сверял домены
     
  7. jamefrankofo
    Спасибо, годный скрипт
     
Loading...
Top