1. PHP / Говнокод #2685

    +171

    1. 1
    $class = (preg_match("/^[0-9]+$/", $i/2)) ? "cssBgGrey" : "cssBgLightBlue";

    Подсветка четных строк.

    Запостил: paladin80, 27 Февраля 2010

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

    • Сильно смахивает на прикол.
      Ответить
      • Или кому-то регулярки съели мозг
        Ответить
    • Вот дурачьё же.
      preg_match("/^.?[02468]$/", $i)
      И никакого деления.
      Ответить
      • А ещё говорят, что регулярки очень медленные. Если использовать деление, то strpos от "." будет лучше, да.
        Ну и для самой вкусности можно открыть страшную тайну про %i & 1
        Ответить
        • а я использовал isEven = !$i%2;
          Ответить
          • Это можно, но AND битовый вроде как быстрее деления.

            Ха-ха-ха, кажется, я - Петросян, в скриптовом языке, который обгоняет слоупок гнаться за скоростью.
            Ответить
    • талантливо.
      Ответить
    • Сей Говнокод мной был обнаружен в ходе просмотра кода 19ти летнего джуниора в нашей фирме. При попытке выяснить "как же ты докатился до такого", получил ответ: "Сначала я написал $i/2, а потом уже начал думать как бы проверить, что целое число получается. Долго не работало, пока не дописал "^" и "$" в проверке." $i % 2, предложенный мной, для него стал озарением.

      Ничего, человек он вполне перспективный, далеко пойдет. Особенно с такой фантазией. :)
      Ответить
      • Он гений, это очевидно.
        Ответить
      • Я сначала подумал что это матерый перл-программист написал (:
        Ответить
      • Ну так ничего страшного. Я свои последние пять матёрых регулярок написал вообще перебором. И сейчас принципы построения представляю смутно.
        /me империативщик.

        P.S. Самые большие муки были, когда в инсте делал лабы на прологе. Реально код писался брутфорсом, после постоянного прогона в отладчике.
        Ответить
        • Перебор не нужен.
          > принципы построения
          надо просто уяснить, в таблицы квантификаторов и прочих радостей никто не запрещает подсматривать, а со временем они сами собой заучатся. Успехов.
          Ответить
        • может профессию сменить ?
          Ответить
        • Обоим капитанам сверху.
          По роду деятельности регулярки были нужны как вспомогательный инструмент. Написал - забыл.
          А работаю я хорошо, спасибо.
          Ответить
    • я считаю для регэкспов надо отдельный раздел завести
      Ответить
      • Мне кажется, популярность маленькая будет. Говнорегэкспы даже в кучу редко валят.
        Ответить

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