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

    +50.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $find = str_replace(",", "", $find);
    $find = str_replace(".", "", $find);
    $find = str_replace("/", "", $find);
    $find = str_replace(" ", "", $find);
    $find = str_replace("-", "", $find);
    $find = str_replace("+", "", $find);
    $find = str_replace("#", "", $find);

    Регулярные выражения =)

    Запостил: guest, 08 Декабря 2008

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

    • vov4ik:
      кстати, быстрее пашет, чем регулярные выражения...
      А во-вторых, не всем дано быть гуру в регекспе.
      Так что ЭТО говнокодом не считаю.
      Ответить
      • откуда инфа что быстрее?
        Ответить
      • > не всем дано быть гуру в регекспе
        Учить основы регулярок нецелесообразно™.
        Ответить
        • Настоящие программисты, в отличие от питухов анскильных, сами пишут обход строки.
          Ответить
    • страйко:
      а я считаю
      $find = str_replace(array(',', '.', '/', ' ', '-', '+', '#'), '', $find);


      ну хотя бы так
      Ответить
    • ворка:
      страйко

      Исходный вариант выглядит красивее :))))
      Симметричненько так всё :)
      Ответить
    • Ффс:
      100% говнокод
      Ответить
    • ejik:
      Могло быть и хуже. :)
      Ответить
    • Natan:
      ereg_replace....
      Ответить
    • Lex:
      110% говнокод

      кстати регуляра быстрее
      Ответить
    • Londeren:
      [quote=Natan ]
      ereg_replace.... [/quote]

      спасибо, паржал)))
      Ответить
    • Veton:
      [quote=Lex]кстати регуляра быстрее[/quote]
      Этого кастрировать

      страйко+1
      Ответить
    • говноним:
      страйко, +1.
      кстати, довольно часто встречается такой код =\
      Ответить
    • zzzz:
      хер там она быстрее.
      Ответить
    • dj Virus:
      ворка, не, ну если хочешь симетричненько, то можно так:
      $find = str_replace(
          array(
              ',', 
              '.',
              '/',
              ' ',
              '-',
              '+',
              '#'
          ), 
          '', 
          $find
      );
      Ответить
    • йа:
      Краше так
      $find = str_replace(",", "", str_replace(".", "", str_replace("/", "", str_replace(" ", "", str_replace("-", "", str_replace("+", "", str_replace("#", "", $find)))))));
      Ответить
    • Neteus:
      [quote=zzzz]
      хер там она быстрее.
      [/quote]

      Зависит от длины изначальной строки... для коротких регулярка будет быстрее, для длинных - эта конструкция...

      но то что предложил страйко определенно лучше))
      Ответить
    • >$find = str_replace(",", "", $find);
      >$find = str_replace(".", "", $find);
      >$find = str_replace("/", "", $find);
      >$find = str_replace(" ", "", $find);
      >$find = str_replace("-", "", $find);
      >$find = str_replace("+", "", $find);
      >$find = str_replace("#", "", $find);

      s/[\,\.\\\ \-\+\#]//g
      Ответить
    • показать все, что скрытоvanished
      Ответить

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