Обычно мы заранее знаем какие нам данные понадобятся(при условии что чертеж проекта набросан заранее), поэтому я обычно пишу функцию, которая достает из базы все что нам нужно на основе id для конкретного пользователя. Тоесть все разруливает ОДНА точка.
А так потом путаница помоему может возникнуть при расширении потому что часть данных лежит в сессии, часть по выборке забирается и можно запутаться, записывать ли снова все в сессию или держать часть в сессии а часть забирать по отдельной выборке - как по мне бардачно получается.
Поэтому проще написать функцию и все... и если что то надо поменять - уже делаем небольшие правки в функции или методе класса в зависимости от того в каком стиле написан код ООП или процедурный...
Ну да, пароль не нужен, а за мылом тогда лазить в БД?
Я например записываю только ID при авторизации в сессию и дальше на этой основе все разруливаю. Если что то нужно селектнуть из БД - то id всегда есть под рукой и можно легко манипулировать данными при помощи него
Есть только одно исключение для символа ^, когда он не значит "начало строки", но пока опустим этот момент.
Я знаю это когда он внутри класса [] тогда меняется смысл
В принципе понятно, я просто на ночь глядя тупанул, записал такой "айпишник" 999.999.999.999 и увидел что фильтр оно не прошло. Вот сегодня посмотрел ещё раз, оказывается я не туда смотрел, а смотрел там где я циклом проверял максимальное значение Поэтому думал, что ваша регулярка отбрасывает все числа больше 255 вот и не понимал как ) Спасибо Саныч
И ещё понял что один и тот же результат можно получить разными вариантами. А до этого думал с регулярками все по строже а оказался бардак ))
EuGen
Спасибо за рекомендацию, а класс интересный сам по себе, но чем к примеру плохо то как выполнил я следующее задание? т.е разбил каждую часть выражения(айпи) на ячейку массива $matches а потом в цикле прошелся по его элементам и если какой то из элементов больше чем то что нам нужно - получаем ошибку... Итераций тоже не много, максимум 4
Следующее буду выполнять последнее задание от EuGen и DelphinPRO
Просто саму регулярку составляйте так, чтобы под нее попали только нужные диапазоны цифр.
Учту, спасибо ) Сейчас наверное отправлюсь отдыхать, но завтра начну снова курить это дело... (Добавление) Саныч
Что то сон отогнала мне ваша регулярка... я вот все понять ее до конца не могу...
Ща напишу как я её понимаю
^ - начало строки(начинаться выражение может в данном случае только с того что в главных скобках
далее идет комбинация ?: которая в моем понимании означает - все что идет после двоеточия будет выброшено из $ip, но там \d который пропускает цифры(вроде должно срезаться) а они почему то попадают под шаблон. {1, 3} понятно, минимум одна цифра, максимум
3. Далее снова ступор с ?: \.(экранированная точка) и вроде тоже должна быть исключена. и что означает эта волшебная палочка | - я вообще без понятия {4} - не менее и не более 4 кармашков скажем так... т.е 127.0.0.1 $ - конец строки.
Вообщем думаю я заблуждаюсь по поводу ?: - если да то поправьте пожалуйста. И ещё не понял того, как данная регулярка определяет что нельзя более 255 писать в каждый кармашек... секрет в "палочке"? ))
Саныч
А что, шанс ещё остался )) Я исправился. Но только не пойму один момент и баг ли это.
При попытке задать меньше 4 значений в адресе, например 127.0.0 то строка все равно проходит фильтр. Пробовал через + принудить к вводу каждой части но не вышло. Получилось только первую часть сделать принудительной...
Саныч
Спасибо за ссылку Так я не браковал ваше задание, просто в данный момент честно говоря главная цель это набить руку на самих шаблонах, а в дальнейшем уже наверное буду решать и более разнообразные задачи с привкусом регулярок
Саныч
Я видел эту тему ))) сложная была регулярка Мне бы что нибудь по проще... ) Хотя тут запарка скорее всего будет с поиском нужной информации, придется перелопатить разные таблицы цветов, разобраться и потом уже что то писать Мне бы просто руку набить на написании шаблонов... Больше заданий - но не очень сложные ) От простого - сложному ) Я конечно учту и это задание, но думаю постараюсь выполнить только если простых заданий больше не будет
Цель данного топика - получать различные не сложные задания или средней сложности просто для того что бы набить руку для составления шаблонов регулярных варежний )
Ребята, вообщем я решил надавить на знания в области регулярок и необходима ваша помощь. Собственно прошу более опытных разработчиков просто писать сюда для меня задачи различного направления по регулярным выражениям. Желательно не от балды а те которые реально встречаются на практике чаще всего
Сложность: от простого к сложному. Не важно матч или реплейс, любые.
Начнем с простых а потом уже на более сложные перейдем. По мере возможности буду выкладывать сюда свои решения и если будет ступор, наверное буду спрашивать вас
Если найдутся те кто захочет поучаствовать в моем марафоне - буду только рад
П:С при наличии задач просьба других форумчан не писать свои решения чтоб я думал сам...