10:08 

подскажите по регулярке

Plexx
имеем текст. вернее картинки

$text ="<имг src="ююю/wink.gif"><имг src="ююю/1279788629_news_open.jpg">";

preg_match( "#<имг src="http://[\](.+?\.jpg)[\].*?/">#i", $text , $image);

echo $image;

почему при таком регулярном выражении выводит ююю/wink.gif"/>

а если поставить пробел между двумя картинками тогда выводит нормально. В чем проблема?

@темы: PHP, Вопросы

Комментарии
2011-01-18 в 13:05 

chipp
главное ебашилово, мои дорогие)
кавычки нормальные поставьте) то есть заэкранируйте двойные \"
это раз
символ / тоже надо экранировать \/
это два
три: зачем вам в regexp http? если вы не планируете парсить его?

2011-01-18 в 13:06 

chipp
главное ебашилово, мои дорогие)
поищите тут regexlib.com

2011-01-18 в 13:16 

Plexx
кавычки сожрал форум



мне нужно из всего текста вытащить первую картинку и дальше с ней работать. причем картинка должна быть с расширением jpg

2011-01-18 в 13:26 

chipp
главное ебашилово, мои дорогие)
а ююю так и будет? или все-таки нормальная папка?

2011-01-18 в 13:36 

chipp
главное ебашилово, мои дорогие)
немного не php, но regexp везде одинаковый

2011-01-18 в 13:37 

alhames
alhames.ru
$image - массив, 0 - весь участок текста, 1 - первая скобка, 2 -вторая..

2011-01-18 в 13:58 

Plexx
а ююю так и будет? или все-таки нормальная папка?
там урл.. ююю

2011-01-18 в 14:04 

Plexx
$image - массив, 0 - весь участок текста, 1 - первая скобка, 2 -вторая..
Ну да забыл дописать



chipp с этой регуляркой не работает

2011-01-18 в 14:37 

alhames
alhames.ru
Он хавает все что между первым src и вторым.
Используйте исключения:
#<img.*?src=['\"]([^\"']+\.jpg)['\"].*?/?>#i

2011-01-18 в 14:44 

alhames
alhames.ru
Кстати, ОЧЕНЬ советую myregexp.com/
Просто незаменимая вещь при отладке регулярки ;-)

2011-01-18 в 14:51 

Plexx
Он хавает все что между первым src и вторым. Используйте исключения: ##i

Вот спасибо.. с этим регулярным выражением заработало.. Благодарю... а сайтик почитаю.

   

Сообщество PHP программистов

главная