[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не могу вытащить значения из ссылок
sx000
<li><a href="tra.html" title="tra ta ta">
<img
src="http://ololo.jpg" width="160" height="120" alt="tra ta ta"


Есть такой код я пытаюсь вытащить
tra.html
tra ta ta
http://ololo.jpg

пишу ему
preg_match_all('|<li><a.* href="(.*)" title="(.*)"><img src="(.*)" width="160"|isU',$page,$matches);
print_r($matches);

А оно не выводит пустые массивы не могу понять в чем проблема и то всего два массива на странице их куча таких ссылок.
sx000
методом тыка вяснил что проблема в "160" в конце но не понимаю почему?
Игорь_Vasinsky
урл вытаскивай отдельно и титл вытаскивай отдельно

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
killer8080
Между <a href="tra.html" title="tra ta ta"> и <img src="http://ololo.jpg", есть пробельные символы, а в регулярке это не учтено.
sx000
Цитата (Игорь_Vasinsky @ 18.10.2012 - 12:52)
урл вытаскивай отдельно и титл вытаскивай отдельно

шаблон то один и главное в нем как раз эти три цифры smile.gif
sx000
Цитата (killer8080 @ 18.10.2012 - 12:54)
Между <a href="tra.html" title="tra ta ta"> и <img src="http://ololo.jpg", есть пробельные символы, а в регулярке это не учтено.

да ставил я там и точку тоже все равно толку нет
Игорь_Vasinsky
Цитата
title="(.*)"><img src="(.*)"


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
sx000
Цитата (Игорь_Vasinsky @ 18.10.2012 - 14:08)
Цитата
title="(.*)"><img src="(.*)"

не понял smile.gif
kristall
preg_match_all('#(?:alt|href|src|title)="([^"]*)"#',$page,$matches);


_____________
echo '<pre>',print_r($var, 1);die;

root@server# make love && war
sx000
интересный способ спасибо
killer8080
Цитата (sx000 @ 18.10.2012 - 16:49)
да ставил я там и точку тоже

а надо было \s*, а не точку wink.gif
sx000
я часть отсек симпл домом ... через одно место но работает :)
$imgs = $html->find('a');
foreach ($imgs as $i){
if (eregi('ku',$i) and eregi('/meeee/',$i)){
//echo $i."\n";
preg_match_all('#(?:alt|href|src|title)="([^"]*)"#',$i,$matches);
$urls_image[] = $matches;
}
}
killer8080
sx000
А ты в курсе что ereg функции уже давно объявлены deprecated?

ну вот вариант
$t = '<li><a href="tra.html" title="tra ta ta"> 
<img src="http://ololo.jpg" width="160" height="120" alt="tra ta ta"
'
;
preg_match_all('#<li>\s*<a[^>]+href="(.*)"[^>]+title="(.*)".*>\s*<img[^>]+src="(.*)"#isU', $t, $m);
echo '<pre>'.htmlspecialchars(print_r($m, 1)).'</pre>';
sx000
ага тока привык к ней
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.