Регулярное выражение для картинки

 
0
 
PHP
ava
Blaga | 19.02.2013, 14:01
Всем привет помогите с регуляркой. делаю парсер картинок из вк групп там при получении страницы такой код:
HTML
<div class="wall_text"><a class="author" href="http://vk.com/mudakoff">MDK</a> <div id="wpt-10639516_13898400"><div class="page_post_queue_wide"><div class="page_post_sized_thumbs  clear_fix" style="width: 537px; height: 309px;"><a onclick="return showPhoto('-10639516_298255289', 'wall-10639516_13898400', {temp:{base:&quot;http://cs14101.userapi.com/c7006/v7006252/&quot;,x_:[&quot;9ee/GSkpfq7xD8w&quot;,604,348]}}, event)" style="width: 537px; height: 309px;" class="page_post_thumb_wrap  page_post_thumb_last_column page_post_thumb_last_row"><img src="mudakoff_files/GSkpfq7xD8w.jpg" style="" class="page_post_thumb_sized_photo" height="309" width="537"></a></div></div>
<div class="page_post_queue_narrow"><div class="page_post_sized_thumbs  clear_fix" style="width: 337px; height: 194px;"><a onclick="return showPhoto('-10639516_298255289', 'wall-10639516_13898400', {temp:{base:&quot;http://cs14101.userapi.com/c7006/v7006252/&quot;,x_:[&quot;9ee/GSkpfq7xD8w&quot;,604,348]}}, event)" style="width: 337px; height: 194px;" class="page_post_thumb_wrap  page_post_thumb_last_column page_post_thumb_last_row"><img src="mudakoff_files/GSkpfq7xD8w.jpg" style="" class="page_post_thumb_sized_photo" height="194" width="337"></a></div></div></div></div>


из него надо выдрать и склеить ссылку на картинку
HTML
{base:&quot;http://cs14101.userapi.com/c7006/v7006252/&quot;,x_:[&quot;9ee/GSkpfq7xD8w&quot;,604,348]}

станет
HTML
[URL=http://cs14101.userapi.com/c7006/v7006252/9ee/GSkpfq7xD8w.jpg]http://cs14101.userapi.com/c7006/v7006252/...GSkpfq7xD8w.jpg[/URL]
Ответы (7)
ava
Aliance | 19.02.2013, 13:12 #
Ну а расскажи, как пытался сделать сам и что не получилось?
ava
patap | 19.02.2013, 13:15 #

preg_match_all('#\{base:.+?(http://[^&]+)[^/]+/([^&]+)#', $content, $matches);
ava
Blaga | 19.02.2013, 13:19 #
С этой регуляркой я даже не пытался ничего сделать. Для меня это слишком сложно. я могу выдрать сделать более тривиальные задачи с ними но тут... кроме как к http:// не знаю к чему привязаться...
ava
Aliance | 19.02.2013, 13:25 #
По-моему лучше уж тогда вырезать все между { и } а потом с помощью json_decode иметь приятный объект.
ava
Blaga | 19.02.2013, 13:26 #
patap, очень помогло, но у меня показывает пол пути http://cs14101.userapi.com/c7006/v7006252/ и не показывает после 

&quot;,x_:[&quot;
 а там еще 9ee/GSkpfq7xD8w
я постараюсь допилить, но и за помощь буду благодарен. smile
ava
patap | 19.02.2013, 13:39 #
ты дамп массыва $matches смотрел?

Array
(
    [0] => Array
        (
            [0] => {base:&quot;http://cs14101.userapi.com/c7006/v7006252/&quot;,x_:[&quot;9ee/GSkpfq7xD8w
            [1] => {base:&quot;http://cs14101.userapi.com/c7006/v7006252/&quot;,x_:[&quot;9ee/GSkpfq7xD8w
        )

    [1] => Array
        (
            [0] => http://cs14101.userapi.com/c7006/v7006252/
            [1] => http://cs14101.userapi.com/c7006/v7006252/
        )

    [2] => Array
        (
            [0] => GSkpfq7xD8w
            [1] => GSkpfq7xD8w
        )

)
ava
Blaga | 19.02.2013, 13:59 #
patap, я затупил. по другому выводил...
Спасибо. Дальше сам допилю.
Зарегистрируйтесь или войдите, чтобы написать.
Фирма дня
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Участники
ava  Aliance   patap   Blaga
advanced
Отправить