|
|
|
| Уважаемы форумчане, учусь писать граббер, вроде бы во всём разобрался, но вот не могу справиться с поставленной задачей, решил прибегнуть к вашей помощи.
Как вы понимаете есть "заграбленый" html, мне нужно что бы в этом тексте ссылки типа
/saloon/auto/nissan/TIIDA/4042
/saloon/auto/subaru/LEGASY_B4/4022
/saloon/auto/mazda/AXELA/4010
и тд. превратились вот в такой формат:
/car.php?mark=nissan&model=TIIDA&id=4042
/car.php?mark=subaru&model=LEGASY_B4&id=4022
/car.php?mark=mazda&model=AXELA&id=4010 | |
|
|
|
|
|
|
|
для: PROUser
(15.07.2008 в 15:39)
| | Как-то так
<pre>
<?php
$t = "/saloon/auto/nissan/TIIDA/4042
/saloon/auto/subaru/LEGASY_B4/4022
/saloon/auto/mazda/AXELA/4010";
$e = preg_replace("#/saloon/auto/(.+)/(.+)/(.+)#isU","/car.php?mark=$1&model=$2&id=$3",$t);
print $e;
?>
|
| |
|
|
|
|
|
|
|
для: AcidTrash
(15.07.2008 в 16:45)
| | Огромное спасибо!
Приду домой, потестирую, теперь ещё один вопрос... Где почитать о значерии спец. символов "#isU", "(.+)", "#" и т.д.... Учебник по PHP 4 - Регулярные выражения (Учебник по PHP 4 - Регулярные выражения) здесь всё подробненько просмотрел, но ничего такого не нашел. | |
|
|
|
|
|
|
|
|
для: BinLaden
(15.07.2008 в 18:17)
| | Отлично, бальшое спасибо за базу знаний) | |
|
|
|
|
|
|
|
для: PROUser
(15.07.2008 в 17:28)
| | >Где почитать о значерии спец. символов "#isU", "(.+)", "#"
# - это в моём примере ограничители регулярного выражения(delimiter).
i - модификатор, для игнорирования регистра(хотя в моем примере он не нужен, просто поставил на "автомате").
s - модификатор, метасимвол "точка" в шаблоне соответствует всем символам, включая перевод строк(возможно тоже не понадобится).
U - этот модификатор меняет жадность регулярного выражения. | |
|
|
|
|
|
|
|
для: AcidTrash
(15.07.2008 в 23:01)
| | Спасибо, патихонечку разбираюсь, довольно интересно) | |
|
|
|