"PHP" / Говнокод #4212 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
/* That revolting regular expression explained 
/^(\w+)\[(\w+)([=~\|\^\$\*]?)=?"?([^\]"]*)"?\]$/
  \---/  \---/\-------------/    \-------/
    |      |         |               |
    |      |         |           The value
    |      |    ~,|,^,$,* or =
    |   Attribute 
   Tag
*/

Это НЕ говонокод, просто коммент к регулярке, просто очень понравился и хотел показать...
Иногда регулярки очен запутанами бывает, и редактировать их турдно без нормальной комментов.
Нашел в shop-script

Запостил: termes termes, (Updated )

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

  • Ну а чё, было дело, и не так расписывал 🙂
    /^(\w+)\[(\w+)([=~\|\^\$\*]?)=?"?([^\]"]*)"?\]$/
                                                  конец строки 
                                                 ]
                                              " (необязательно)
                                      Значение: кроме ], "
                                   " (необязательно)
                                 = (необязательно)
                   1 из ~, |, ^, $, *, = (необязательно)
              Атрибут: хотя бы 1 символ
           [ 
       Тег: хотя бы 1 символ
    начало строки
    Ответить
      • А вы таки всё на лету с первого раза схватываете? 😉 Исключительно в учебных целях.
        Ответить
        • т.е. самому себе расписать по символам, что есть что в регулярке? у меня такое имхо, что если понял суть регулярок, то это уже навсегда - как на велосипеде ездить. лучший учитель - мануал и разбирание действующих регулярок, тогда нейроны в голове постепенно выстраиваются в нужном порядке, и происходит соединение с космическим разумом...
          Ответить
          • > разбирание действующих регулярок
            Именно так. Полезно разобрать несколько сложных примеров (и держать перед глазами). Никто же не говорит, что так нужно делать постоянно.
            Ответить
            • начинать все же всегда лучше с самого простого, усложнять по мере понимания - и, конечно же, реальные применения, практика.
              сразу сложное выглядит как мантра для зубрежки
              Ответить
          • cosmic regexp...
            Квантовый скачок через двенадцатое измерение...
            ---
            говнокоды хиггсовых полей...
            Ответить
  • вот я продолжаю не понимать, зачем обучение начинать с разбора примера? мол, здесь то, а здесь это.
    Тогда у хомячков нейроны выстраиваются в жесткую ассоциацию теории с конкретным примером, и любой другой пример они уже неспособны осилить
    Ответить
    • не всегда. хороший пример может заменить несколько страниц мануала для схватывания сути.
      а если человек понял, что 2*2=4, но не знает, как посчитать 3*3, то проблема вообще не в способе обучения.
      Ответить
        • "заменить ... для схватывания сути", а не вообще заменить. мануалы никто не отменяет.
          Ответить
          • ну я тоже говорил не о замене, а о порядке изучения. имхо, вначале теория, а потом примеры, а не наоборот
            Ответить
  • ИМХО это все же говнокод. Есть такой чудесный модификатор x, который позволяет писать регулярки с каментами и в несколько строк. RTFM!
    Ответить

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

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8