Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Только регулярка

346
06 сентября 2006 года
Новая папка
256 / / 24.12.2004
Что-то я запутался. Посоги, плиз.
Мне нужно только с помощью регулярок выбрать последние 3-5 папок.
$folder = 'http://www.googlelayouts.axw.axisbase.net/myspace-graphics/pixel-signs/quotes/welcome-text/file.html';
if (preg_match_all('/([a-z\-]*\/)/',$folder,$eregResult)){
print "Yes<br>";
print_r($eregResult);

}

Этот вариант работает, но для уверености я хочу указать начало пути.
$folder = 'http://www.googlelayouts.axw.axisbase.net/myspace-graphics/pixel-signs/quotes/welcome-text/file.html';
if (preg_match_all('/http:\/\/.*/myspace-graphics/([a-z\-]*\/)*/',$folder,$eregResult)){
print "Yes<br>";
print_r($eregResult);

}

Данный вариант вытаскивает только одну папку, а мне нужно все. Как это сделать?
244
06 сентября 2006 года
UAS
2.0K / / 19.07.2006
Вот из интереса... Из ограничителей у тебя стоят /...../, и они же встречаются в тексте, вот и ошибка...

Вот тебе правильное regexp-выражение:
 
Код:
#http://.*/myspace-graphics/([a-z\-]*/).*#
346
06 сентября 2006 года
Новая папка
256 / / 24.12.2004
Тот же самый результат
13
06 сентября 2006 года
RussianSpy
3.0K / / 04.07.2006
че-то как-то криво все у вас
как насчет такого варианта?

 
Код:
$Result = explode('/', $_SERVER['REQUEST_URI']);


или вот такой:
 
Код:
$Result = parse_url($URL);
12
06 сентября 2006 года
alekciy
3.0K / / 13.12.2005
:D
Действительно для разбора URL использовать регулярки)))) из пушки по воробьям.
Регулярки вообще одни из самых тормозных функций, так что их лучше использовать когда без них просто ни как не реально обойтись.
346
13 сентября 2006 года
Новая папка
256 / / 24.12.2004
[QUOTE=alekciy]:D
Действительно для разбора URL использовать регулярки)))) из пушки по воробьям.
Регулярки вообще одни из самых тормозных функций, так что их лучше использовать когда без них просто ни как не реально обойтись.[/QUOTE]

Я же не спрашивал, как лучше парсить урл :)
У одного чувака была проблема с регуляркой такого типа, и первое, что я ему посоветовал, так это разбить строку с помощью split'a.
Но сам ради интереса решил попробовать сделать через регулярку.

Уж больно интересно :)
12
13 сентября 2006 года
alekciy
3.0K / / 13.12.2005
split будет быстрее регулярки работать. Особенно если в регулярке не используют квалификаторы жадности.
13
13 сентября 2006 года
RussianSpy
3.0K / / 04.07.2006
[QUOTE=alekciy]split будет быстрее регулярки работать. Особенно если в регулярке не используют квалификаторы жадности.[/QUOTE]
квантификаторы... а не квалификаторы =)))
от английского слова "quantity" - количество
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог