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

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

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

 

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

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

тема: Вытащить значение src=
 
 автор: JIEXA   (18.02.2006 в 23:56)   письмо автору
 
 

Нужно вытаксивать значение src= из всех тегов <img.
Мне Loki подсказал сделать так:

             $pattern = '/(<img)(.)*?(src=)(\'|")([\\w\\s\/.:]*?)(\'|")/i';
             preg_match_all($pattern,$data['news_news'],$out);

Оно работает если src="путь" или src='путь' но если src= то не работает. Тоесть если без кавычек :( плз помогите

   
 
 автор: cheops   (19.02.2006 в 13:38)   письмо автору
 
   для: JIEXA   (18.02.2006 в 23:56)
 

Обычно, чтобы не мучаться и не составлять громоздкое регулярное выражение - вытаскивают ссылки в два захода, src="путь" или src='путь' при помощи приведённого выше регулярного выражения, а без кавычек при помощи
  $pattern = '/(<img)(.)*?(src=)([\\w\\s\/.:]*?)/i'; 
  preg_match_all($pattern,$data['news_news'],$out);

   
 
 автор: JIEXA   (19.02.2006 в 14:48)   письмо автору
 
   для: cheops   (19.02.2006 в 13:38)
 

спасибо

   
 
 автор: JIEXA   (19.02.2006 в 23:59)   письмо автору
 
   для: JIEXA   (19.02.2006 в 14:48)
 

попробывал, но к сожелению оно не работает :( не вытягивает :( к примеру отсюда:

<center><img src=/ibank/news/7512/klassnye_xxx-zhurnaly_8_sht_2.jpg width=339 height=404id=nimg></center>

   
 
 автор: cheops   (20.02.2006 в 14:00)   письмо автору
 
   для: JIEXA   (19.02.2006 в 23:59)
 

Исправьте регулярное выражение следующим образом
'/(<img)(.)*?(src=)([-\w\s\/.:_]*?)/i'

   
 
 автор: JIEXA   (20.02.2006 в 20:38)   письмо автору
 
   для: cheops   (20.02.2006 в 14:00)
 

все равно не работает

   
 
 автор: JIEXA   (22.02.2006 в 00:28)   письмо автору
 
   для: JIEXA   (18.02.2006 в 23:56)
 

Вот универсальное выражение:

$pattern = "!<img[^>]*\ssrc=[\"']?([^>\"'#\s]+)[\"']?[^>]*>!is";

вытаскивает все ))

   
Rambler's Top100
вверх

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