Первый вариант мне нравится - вроде я его написал, а насчет остального согласен. С другой стороны: в случае такого бешенного количества возможных ложных срабатываний, нужно обратиться к первоначальной цели, т.е. глянуть, а где ее применять-то будут вообще? Если ее будут применять для выборки того же списка прокси (надо только дописать, чтоб порт хватала), то я не думаю, что на странице будет ложный мусор. Аналогично, если она используется для того, чтоб выбрать из логов посещений все IP за сегодня. Т.е. тут тоже маловероятен вариант ложного срабатывания. .. хотя я бы воспользовался explod-ом, зная, как записываются строки в логи и чем делятся... Самый оптимальный вариант, если необходима универсальная регулярка
X-Cray, я скопировал тот рег, который использую. Он в свою очередь был написан из совсем другого рега. Модификатор si остался от старого рега, мне он не мешает.
Хы, понятно. Я тоже так копирую частенько, только потом на стадии оптимизации происходит подтирание такого безобразия. Думаю, если все согласны с регом Raa, тему можно закрывать.
Скорее не нужно, т.к., ИМХО, описывать все возможные условия в регулярке часто сложнее, чем отрезать мусор кодом PHP при получении найденного.
В общем возник вопрос. Почему регулярное выражение /b/ соответствует неограниченному количеству символов 'b'? Даже если задать квантификатор {2}