Найти все внешние/внутренние ссылки

Иногда требуется найти на странице все внешние или внутренние ссылки. Это может понадобиться, чтобы сделать для них особое оформление, предупредить пользователя о том, что он переходит на сторонний сайт или скрыть внешнюю ссылку добавленную пользователем до одобрения модератором. Внутренние ссылки имеют следующие признаки: начинаются с того же домена, что и страница или начинаются с "/" или с "./" или с "../" или с "#":

var siteURL = "http://" + top.location.host.toString();
var $internalLinks = $("a[href^='"+siteURL+"'], a[href^='/'], a[href^='./'], a[href^='../'], a[href^='#']");

Внешние ссылки характерны тем, что они начинаются с чужого домена:

var siteURL = "http://" + top.location.host.toString();
var $externalLinks = $("a:not([href^='"+siteURL+"'])");

Используемые селекторы jQuery