Изображения соответствия регулярному выражению, но не внутри тега img
У меня есть функция, которая преобразует все внешние ссылки на изображения в теги img в строке. Это работает хорошо, но также соответствует ссылкам внутри<img>
тег
например:
$text = '<p>lorem ipsum http://example.jpg <img src="example.jpg"></p>';
echo make_clickable($text);
function make_clickable($text) {
$replace = '<p class="update-image"><a href="$0" target="_blank"><img src="$0"></a></p>';
$text = preg_replace('~https?://[^/\s]+/\S+\.(jpg|png|gif)~i', $replace, $text );
return $text;
}
этот тест будет соответствовать как обычный текст, так иsrc
тоже. есть ли способ исключитьimg
тег?