На основании ответов, которые я очень ценю, я изменил код на следующий.Все, что я действительно хочу, это заблокировать URL.Неважно, какой путь и параметры, поэтому я думаю, что это ловит все возможности.Это используется вместо фильтров php, потому что страница фильтров говорит, что не может поймать URN.
if (preg_match("/(\b(((https?|ftp|file|[-A-Z0-9]|):\/\/)|www[.]))/i", $msg)) {