регулярное выражение соответствует основному доменному имени
Мне нужно иметь возможность идентифицировать доменное имя любого поддоменов.
Примеры:
Для всего этого мне нужно соответствовать толькоexample.co
/ example.com
/ example.org
/ example.co.uk
/ example.com.au
/ example.gov.us
и так далее
www.example.co
www.first.example.co
first.example.co
second.first.example.co
no.matter.how.many.example.co
first.example.co.uk
second.first.example.co.uk
no.matter.how.many.example.co.uk
first.example.org
second.first.example.org
no.matter.how.many.example.org
first.example.gov.uk
second.first.example.gov.uk
no.matter.how.many.example.gov.uk
Я весь день играл с регулярными выражениями и целый день что-то гуглял, и до сих пор не могу что-то найти.
Edit2: I prefer a regex that might fail for very odd cases like t.co then list all TLD's and have the ones I did not list but could have been predicted fail and match more then it should. Isn't this be the option you would chose?
Обновить: Используя выбранный ответ в качестве руководства, я построил это регулярное выражение, которое делает эту работу за меня.
/([0-9a-z-]{2,}\.[0-9a-z-]{2,3}\.[0-9a-z-]{2,3}|[0-9a-z-]{2,}\.[0-9a-z-]{2,3})$/i
It might not be perfect but so far I have not encountered a case where it fails.