Да, это - установка списка по умолчанию для всего ежемесячного пароля spam^Wreminders, который отослан, и некоторые другие (редкие) административные электронные письма. Это было создано по умолчанию на всех новых установках в течение по крайней мере последних лет.
Какой язык Вы используете?
В целом это кажется на желание чего-то, что соответствует основным аспектам домена, исключая возможность периода кроме того, который формирует рисунок .tld.
#http://[^]. +\. (com|net|org) #i
Если Вы не хотите соответствовать protocal, возможно, что-то вроде этого.
# [^.] + \. (com|net|org) #i
Ваше требование обработать многослойный TLD's действительно завинтит это, необходимо будет вести ручной список всего те, Вы хотите соответствовать. Единственная альтернатива должна сделать поиски DNS для определения типа списка. Действительно нет другого способа извлечь данные субдомена из домена с регулярным выражением, потому что по справедливости домены являются на самом деле просто субдоменами некоторого TLD (высокоуровневый домен).
Править: Для соответствия принятию TLD, у них было бы меньше чем четыре символа, можно играть вокруг с чем-то вроде этого. Вы оказываетесь перед необходимостью разрабатывать то, что составляет запуск и конец соответствия. Вы - requireing присутствие protocal? Это находится в абзаце, где кто-то мог type.a период из контекста? Если Вы предоставляете больше подробную информацию на параметрах, мы смогли предоставлять более точное решение.
[^.]+((\.[^.]{0,3})+)
Один из лучших ресурсов в сети для этого является regexlib:
http://regexlib.com/Search.aspx?k=URL
http://regexlib.com/Search.aspx?k=TLD
Существуют многочисленные примеры соответствия протоколу и TLD или всему querystring для законности