| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Тексты > Помогите с регулярным выражением |
| Автор: kanaris 17.5.2008, 15:40 | ||||
| Нужно разделить URL'ы следующих видов: elkg/sadg/ewn/gh_er/ew/dev/core/urltest/2007/02/03/sdrgkjl.html elkg/sadg/ewn/gh_er/ew/dev/core/urltest/2007/02/03/666 на составляющие: 1) elkg/sadg/ewn/gh_er/ew/dev/core/urltest/ (путь, каждое звено может состоять из больших и маленьких лат. букв, _ и -, звеньев может быть от нуля до +бесконечности) 2) 2007/02/03/ (дата. ее может вообще не быть, может состоять из года; года и месяца; года, месяца и числа) 3) sdrgkjl.html (файл, может быть не указан, имя состоит из a-z, A-Z, 0-9, -, _, а расширение только html) 4) 666 (файл без расширения, якобы номер страницы, представляет собой только число. элемент может не встречаться) должно работать с урлами любого вида: elkg/sadg/ewn/gh_er/ew/dev/ core/urltest/ urltest/2007/02/ sdfsdf/sdrgkjl.html core/urltest/25 и тд. Пробовал следующее:
выводит вот что:
Не правильно в общем! Кто поможет? |
| Автор: amg 19.5.2008, 09:56 | ||
|
| Автор: skyboy 19.5.2008, 13:06 |
| воспользуйся http://ua.php.net/manual/ru/function.parse-url.php или http://php.net/explode |
| Автор: Feldmarschall 19.5.2008, 13:10 |
| skyboy, ни та, ни другая функция ему не поможет. первая разве что поможет отделить файл от остального, но не более. а вторая просто разобьет. а нужно-то определить тип ссылки - с датой или без, и так далее. другое дело, что это ж надо сидеть и кропотливо составлять и отлаживать паттерн. для себя я считаю, что не могу перекладывать эту работу на других людей, но каждый для себя сам решает, разумеется. |