2014-01-21 4 views
-3

Я пробовал некоторые решения, найденные в Интернете, но это не помогло.Как найти img src из этой части текста php regex?

Дано: <p><img alt="" src="images/img2.jpg" style="float:left; height:300px; width:600px" /></p><p>bla-bla-bla</p>

мне нужно получить: images/img2.jpg.

Использование: preg_match('$<img.*src="(.*)"$', $text, $matches); и не дает результата.

+0

Какой язык? Каковы эти решения, которые вы пробовали? Возможно ли, что текст содержит несколько атрибутов 'src'? – Vache

+1

одно слово: парсер – tenub

+0

забыл указать lang :) php. yeap, его возможно. но мне нужно получить только первый img src – Natus

ответ

0

Использование регулярных выражений: <img.*src="(.*)".*/>

Это будет соответствовать вашим теги изображений и первая группа захвата даст вам свой путь. Ваш конкретный язык может потребовать некоторого массирования регулярного выражения.

В общем, разбор тегов с регулярным выражением - это не очень хорошая идея, однако (если ваш тег охватывает линии, он, к примеру, не ударит).

+1

Нужно использовать нежирный квантификатор, чтобы он не прерывался на ' Blah '. Попробуйте ' Palpatim

+0

не дает результата – Natus

+0

Возможно, вам придется избегать двойных кавычек и угловых кронштейнов. Я не знаком с синтаксисом PHP. $ в регулярном выражении обычно имеют другое значение, чем то, как вы их используете в preg_match ('$ adamdc78

Смежные вопросы