Regex for Domain name

Matches a bare domain name like example.com.

^([a-zA-Z0-9](-?[a-zA-Z0-9])*\.)+[a-zA-Z]{2,}$

Proof it works

5/5 sample tests passed · compiles: true

SampleShould matchResult
example.com yes pass
sub.domain.co yes pass
example no pass
-bad.com no pass
http://example.com no pass

Try your own input

Related patterns