Поздравляем, вы - один миллионный клиент, который спрашивает Stack Overflow, как анализировать HTML с помощью регулярных выражений!
[X] [HT] ML не является обычным языком и не может быть надежно проанализирован с помощью регулярного выражения. Используйте анализатор HTML. Сам PHP дает вам DOMDocument , или вы можете предпочесть simplehtmldom .
Кстати, вы не можете определить тип файла, посмотрев его URL. Нет никаких причин, по которым JPEG должен иметь расширение «.jpeg», и, действительно, нет никакой гарантии, что файл с расширением «.jpeg» действительно будет JPEG. Единственный способ убедиться в этом - извлечь ресурс (например, используя запрос HEAD) и посмотреть заголовок Content-Type.