PHP检查域名正则表达式(没有tld部分)

时间:2012-12-09 13:04:48

标签: php expression

我正在使用此代码验证网址:

if(!filter_var($check_url, FILTER_VALIDATE_URL))
{ echo "URL is not valid"; }
else { echo "OK, valid"; }

现在大多数情况下这没关系,但这会解析:http://www.--tester.com作为有效域?并且在开头不允许破折号!?

是否有正则表达式只检查NAME(没有扩展部分,因为它只会注册.com域名,因此会自动添加,无需检查它)...所以只检查实际名称是否为“很高兴”......

我想输入必须只检查字母,数字和破折号(但只有在它们不在开始时才会被检查)没有点和其他字符。

1 个答案:

答案 0 :(得分:1)

对不起伙计们,如果其他人需要,那就是:

^([a-zA-Z0-9][-a-zA-Z0-9]*[a-zA-Z0-9])$