通常匹配域名的格式要求:
匹配域名的正则:
来看一个例子,
<?php $url = 'www.test.com'; $search = '/---正则N---/'; if(preg_match($search,$url)){ echo '匹配'; }else { echo '不匹配'; } //edit by www.jb200.com ?>
以下正则表达式,均来源于网络,供大家学习参考。
正则1
b([a-z0-9]+(-[a-z0-9]+)*.)+[a-z]{2,}b
错误匹配:长度>60
正则2
^(([^-][a-z0-9A-Z-_]+.)*)[^-][a-z0-9A-Z-_]+(.[a-zA-Z]{2,4}){1,2}$
错误匹配:长度>60
错误匹配:www.te_st.com
正则3
(([wd-_]+.):?[^-_])+w{2,4}
不匹配:test.com.cn
错误匹配:www.te_st.com
正则4
[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+.?
暂无错误
正则5
(?<=.)([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?.)+[a-zA-Z]{2,6}
不能匹配二级域名
正则6
([a-z0-9][a-z0-9-]*?.(?:com|cn|net|org|gov|info|la|cc|co)(?:.(?:cn|jp))?)$
一些顶级域名不能匹配,慎用。