regex для URL-адреса и изображения в тексте или html

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

Пример ввода пользователем:

  bla bla bla http://foo.com bla bla bla http://img.ruphp.com/php/404.gif bla bla bla 

Ищете решение, которое обнаружит URL-адрес без изображения и превратит его в ссылку, а также превратит URL-адрес изображения в встраиваемый образ (IMG-тег).

поэтому выход будет:

  bla bla bla <a href="http://foo.com"> http://foo.com </a> bla bla bla <img src = "http://img.ruphp.com/php/404.gif" /> bla bla bla 

Связанный

  • Regex для проверки правильности URL-адреса, который заканчивается на .jpg, .png или .gif
  • Какое лучшее регулярное выражение проверяет правильность строки?
  • Получение частей URL (регулярное выражение)

Related of "regex для URL-адреса и изображения в тексте или html"

Разбейте его на несколько этапов.

Во-первых, найдите ссылки с чем-то вроде:

/http:[^ ,]+/i 

Затем замените соответствующую строку новым содержимым на основе типа, который вы можете обнаружить, сопоставив строку, которую нужно заменить, например:

 /\.(jpg|png|gif|bmp)$/i 

Ищете решение, которое будет обнаруживать не-образный URL-адрес

Нет такой вещи, как изображение или URL-адрес без изображения. Наличие (или отсутствие) расширения файла .gif '/'. Jpeg '/. Jpg' / '. Png' не имеет никакого отношения к тому, указывает ли URL на изображение или нет.

например. « http://www.example.com/getimage/3 » может вернуть совершенно хороший JPEG. Невозможно узнать, на каком носителе указывает URL-адрес, не получая его (используя GET или, лучше, HEAD), и проверка возвращаемого «Content-Type» – это «образ / что-то».