1. C# / Говнокод #4105

    +124

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    // Split the domain in parts
    string[] sParts = sEmailAddress.Split("@".ToCharArray(), 42);
    
    // An e-mail address must, as a minimum, contain 2 parts separated by a @
    if (sParts.Length != 2) 
    {
        throw new InvalidEmailAddressException(sEmailAddress);
    }

    Валидатор email-адреса.

    Запостил: musuk, 26 Августа 2010

    Комментарии (23) RSS

    • показать все, что скрыто$%^#^#&&%#&*^@!#))(((((((#*)))(***%&?.ЙУ Х
      Ответить
    • а вы говорите, регулярки... Лулз дня )))))
      Ответить
    • Совет знатока:
      if (!((sEmailAddress.find("@") != -1) && (sEmailAddress.find(".") != -1))
          throw вся хуйня

      А если серьезно, у него там дальше эти части используются как-то?
      Я зачем-то пытаюсь найти ему оправдание...
      Ответить
      • Используются, тоже довольно безумно. но предсказуемо.
        Будете смеяться, но sEmailAddress.find(".") != -1 тоже где-то было. Мы потом огребли с адресами вроде: blba@localhost
        Ответить
      • sParts[1] можно ресолвером валиднуть
        Ответить
    • где-то тут я уже подобный вебкилл подход видел
      правда магического числа 42 вроде там не было )))
      реально в этом коде мне 42 больше всего доставило
      Ответить
    • эврика! правда не то что искал но
      >>This is obvious
      >>Учитесь у уёбкилла делать проверки на валидность мэйла, хуле.

      if (mail=="e-mail*" || mail.length<7)
      { error_text=error_text+"Введитье корьектный e-mail \n" }


      на мой взгляд приведенный ГК, просто сосет у способа WebKilla

      2 Анонимуc
      >>42
      я чуть выше уже написал об этом
      Ответить
    • 42
      Ответить
    • [\w\d\.\-]+@[\w\d\.\-]+\.\w{2,}
      Ответить
    • Соль в том, что код из довольно серьёзной и дорогой системы. Конечно, это не вся проверка, но дальше уже просто глупо, но не смешно.
      Ответить
      • "что дороже всего на свете? человеческая глупость"... Система могла обойтись дешевле, если бы в ней не было подобного говна.
        А говно появляется как раз когда хотят сэкономить на квалифицированных специалистах. А дальше по накатанной говносхеме: Гос-во делает миллиардный заказ у крутой(брендовой) фирмы, фирма втихаря делает миллионный заказ у вшивой конторки, вшивая конторка нанимает за еду студента, который еле-еле лепит ее "из того, что было" полгода, испытывая все это время жесткие анальные мучения, сравнимые лишь с мучениями последователя, которому такую систему вручают на поддержку и допил.
        Ответить
        • Система не обошлась дорого, её дорого продают. Экономии не было. Работали люди за очень неплохие деньги и не в России.
          Ответить
      • Цена системы ортогональна качеству ее кода.
        Ответить
        • Как могут скалярные величины быть ортогональны друг другу?
          Ответить
          • тоже не согласен с таким определением,
            скорее имеет слабую корреляцию особенно при больших ценах
            Ответить
          • перефразирую по-проще: дорогая система не значит красиво написанная
            Ответить
    • Ну вообщето в фрэйворке есть класс System.Net.Mail.MailAddress.
      В конструкторе проверяется валидность.
      И никаких велосипедов.
      Ответить
    • А вообще ToCharArray() и мэйджик нумбер 42 доставили
      Ответить
      • Ты понял меседж. Вообще ИМХО на этом сайте должны быть маленькие кусочки кода, с годным лулзом.
        Ответить
      • вообще тред не читай - сразу отвечай
        Ответить

    Добавить комментарий