Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Извлечение переменной
 
 автор: gurza   (08.08.2006 в 21:45)   письмо автору
 
 

вот хтмл код
<td width=15 class=wb><a href=http://battles.ganjawars.ru/warlog.php?bid=1018332548&rev=1>
<img src=http://images.ganjawars.ru/i/icons/left_automat.gif border=0></a>


надо из него вытащить в переменную вот это

<a href=http://battles.ganjawars.ru/warlog.php?bid=1018332548&rev=1>
<img src=http://images.ganjawars.ru/i/icons/left_automat.gif border=0>

делаю так


eregi("(<td width=15 class=wb>)([^>]*)(.*)",$str[$i], $img);
   $image =$img[2];

но выводит только до первого знака >

   
 
 автор: cheops   (08.08.2006 в 22:08)   письмо автору
 
   для: gurza   (08.08.2006 в 21:45)
 

Можно поступить следующим образом
<?php
  $text 
'<td width=15 class=wb><a href=http://battles.ganjawars.ru/warlog.php?bid=1018332548&rev=1> 
<img src=http://images.ganjawars.ru/i/icons/left_automat.gif border=0></a>'
;
  
$pattern "|<td width=15 class=wb>([^>]+>[^>]+>)|is";
  
preg_match($pattern$text$out);
  echo 
"<pre>";
  echo 
htmlspecialchars($out[1]);
  echo 
"</pre>";
?>

   
 
 автор: gurza   (08.08.2006 в 22:41)   письмо автору
 
   для: cheops   (08.08.2006 в 22:08)
 

наверно я немного не так выразился
дело в том что это выражение находится в цикле и изменяется
начало одно и тоже <td width=15 class=wb>
а дальше может изменятся
может быть такое
<td width=15 class=wb><a href=http://battles.ganjawars.ru/warlog.php?bid=1018332548&rev=1>
<img src=http://images.ganjawars.ru/i/icons/left_automat.gif border=0></a></td>

а может быть такое
<td width=15 class=wb><img src=http://images.ganjawars.ru/i/goff.gif width=15 height=15></td>
вот и надо в первом случае выташить
<a href=http://battles.ganjawars.ru/warlog.php?bid=1018332548&rev=1>
<img src=http://images.ganjawars.ru/i/icons/left_automat.gif border=0>
а во втором
<td width=15 class=wb><img src=http://images.ganjawars.ru/i/goff.gif width=15 height=15>


т.е
надо вытащить все что находится между <td width=15 class=wb></td>

да и после </td> есть код

   
 
 автор: gurza   (08.08.2006 в 22:53)   письмо автору
 
   для: gurza   (08.08.2006 в 22:41)
 

Спасибо за помощ разобрался
вот так надо

 eregi("(<td width=15 class=wb>)([^>]+>[^>]+>)(.*)",$str[$i], $img);

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования