Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Нужна помощь с регуляркой [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Без описания
tsoi85
Отправлено: 28 Июня, 2011 - 19:23:06
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Июнь 2011  


Помог: 10 раз(а)




Предполагаю что переменная $link[1][$i], возвращает нужный htlm, указанный Вами ранее.

PHP:
скопировать код в буфер обмена
  1.  
  2. preg_match_all("#<span class=\"vid-size\">(.*)<\/span><a href=\"([^\>\"]*)\"([^\>]*)>(.*)</a>#i", $link[1][$i] , $size);
  3.  
  4. var_dump($size);
  5.  


Результат var_dump:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. array(5) {
  3.   [0]=>
  4.   array(2) {
  5.     [0]=>
  6.     string(285) "<span class="vid-size">12.0 MB</span><a href="http://domain.com/201106/23/282070/180P_165K_282070.mp4?nvb=20110627043614&nva=20110629231614&hash=0593ef10156701a52994d" onclick="pageTracker._trackEvent('Video Page','Click Download IPHONE');" id="download-mp4">Download IPHONE Format</a>"
  7.     [1]=>
  8.     string(285) "<span class="vid-size">9.24 MB</span><a href="http://domain.com/201106/23/282070/144P_146K_282070.3gp?nvb=20110627043614&nva=20110629231614&hash=07092e81ecb8c0ea1d5c8" onclick="pageTracker._trackEvent('Video Page','Click Download MOBILE');" id="download-3gp">Download MOBILE Format</a>"
  9.   }
  10.   [1]=>
  11.   array(2) {
  12.     [0]=>
  13.     string(7) "12.0 MB"
  14.     [1]=>
  15.     string(7) "9.24 MB"
  16.   }
  17.   [2]=>
  18.   array(2) {
  19.     [0]=>
  20.     string(120) "http://domain.com/201106/23/282070/180P_165K_282070.mp4?nvb=20110627043614&nva=20110629231614&hash=0593ef10156701a52994d"
  21.    [1]=>
  22.    string(120) "http://domain.com/201106/23/282070/144P_146K_282070.3gp?nvb=20110627043614&nva=20110629231614&hash=07092e81ecb8c0ea1d5c8"
  23.  }
  24.  [3]=>
  25.  array(2) {
  26.    [0]=>
  27.    string(91) " onclick="pageTracker._trackEvent('Video Page','Click Download IPHONE');" id="download-mp4""
  28.     [1]=>
  29.     string(91) " onclick="pageTracker._trackEvent('Video Page','Click Download MOBILE');" id="download-3gp""
  30.   }
  31.   [4]=>
  32.   array(2) {
  33.     [0]=>
  34.     string(22) "Download IPHONE Format"
  35.     [1]=>
  36.     string(22) "Download MOBILE Format"
  37.   }
  38. }
  39.  
 
 Top
Coder1994
Отправлено: 29 Июня, 2011 - 07:52:54
Post Id


Частый гость


Покинул форум
Сообщений всего: 213
Дата рег-ции: Май 2010  
Откуда: Россия, Ростов-на-Дону


Помог: 3 раз(а)




tsoi85 пишет:
Предполагаю что переменная $link[1][$i], возвращает нужный htlm, указанный Вами ранее.

PHP:
скопировать код в буфер обмена
  1.  
  2. preg_match_all("#<span class=\"vid-size\">(.*)<\/span><a href=\"([^\>\"]*)\"([^\>]*)>(.*)</a>#i", $link[1][$i] , $size);
  3.  
  4. var_dump($size);
  5.  


Результат var_dump:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. array(5) {
  3.   [0]=>
  4.   array(2) {
  5.     [0]=>
  6.     string(285) "<span class="vid-size">12.0 MB</span><a href="http://domain.com/201106/23/282070/180P_165K_282070.mp4?nvb=20110627043614&nva=20110629231614&hash=0593ef10156701a52994d" onclick="pageTracker._trackEvent('Video Page','Click Download IPHONE');" id="download-mp4">Download IPHONE Format</a>"
  7.     [1]=>
  8.     string(285) "<span class="vid-size">9.24 MB</span><a href="http://domain.com/201106/23/282070/144P_146K_282070.3gp?nvb=20110627043614&nva=20110629231614&hash=07092e81ecb8c0ea1d5c8" onclick="pageTracker._trackEvent('Video Page','Click Download MOBILE');" id="download-3gp">Download MOBILE Format</a>"
  9.   }
  10.   [1]=>
  11.   array(2) {
  12.     [0]=>
  13.     string(7) "12.0 MB"
  14.     [1]=>
  15.     string(7) "9.24 MB"
  16.   }
  17.   [2]=>
  18.   array(2) {
  19.     [0]=>
  20.     string(120) "http://domain.com/201106/23/282070/180P_165K_282070.mp4?nvb=20110627043614&nva=20110629231614&hash=0593ef10156701a52994d"
  21.    [1]=>
  22.    string(120) "http://domain.com/201106/23/282070/144P_146K_282070.3gp?nvb=20110627043614&nva=20110629231614&hash=07092e81ecb8c0ea1d5c8"
  23.  }
  24.  [3]=>
  25.  array(2) {
  26.    [0]=>
  27.    string(91) " onclick="pageTracker._trackEvent('Video Page','Click Download IPHONE');" id="download-mp4""
  28.     [1]=>
  29.     string(91) " onclick="pageTracker._trackEvent('Video Page','Click Download MOBILE');" id="download-3gp""
  30.   }
  31.   [4]=>
  32.   array(2) {
  33.     [0]=>
  34.     string(22) "Download IPHONE Format"
  35.     [1]=>
  36.     string(22) "Download MOBILE Format"
  37.   }
  38. }
  39.  

$link[1][$i] вот что хранит - 110 MB</span><a href="http://domain.com/201106/14/279566/240P_293K_279566.mp4?nvb=20110627193126&nva=20110630141126&hash=09d42c7e56bf9c2aee7e5" onclick="pageTracker._trackEvent('Video Page','Click Download Original');" id="download-org">Download WMV Format
(Добавление)
Решил сделать так
PHP:
скопировать код в буфер обмена
  1. preg_match('/Download (.*) format/i', $link[1][$i], $test);

Всё норм, но есть проблема, слова режутся до 1й буквы - string(1) "O"
(Добавление)
Всё получилось, разобрался!
Всем спасибо!
Проблема была в основной регулярке она </a> не парсила, исправил.
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB