Могу подсказать направление поиска решения.
Для подсчета ссылок и картинок используйте функцию preg_match_all — она выполняет глобальный поиск шаблона в строке. В описанном случае, по-моему, ее лучше использовать с флагом PREG_SET_ORDER. Совпадения будут занесены в массив (читайте PHP Manual).
Для того, что бы отделить внутренние ссылки можно отделить от внешних по шаблону http или www.
Если же внутренние ссылки на сайте содержат указанные шаблоны (такое редко, но бывает), то отделить их можно по содержанию переменной окружения $_SERVER['HTTP_HOST'].
О том, какие паттерны надо писать в регулярке, что бы вырезать ссылки и картинки на этом форуме и в треде про регэкспы написано достаточно много и рассмотрено множество примеров.