用于验证.au域名的正则表达式

时间:2009-08-05 22:49:29

标签: php regex string

我需要一个快速的regexp来验证字符串是否是有效的.au域名。例如:

xxx.com.au
xxx.net.au
xxx.org.au
xxx.biz.au
xxx.--.au

所有这些都应被视为有效。

对于像我一样没有绝望的人来说,这应该是非常简单的。有什么想法吗?

4 个答案:

答案 0 :(得分:3)

如果您只想在.au空间中允许某些辅助TLD:

/^[a-zA-Z0-9-]+\.(?:com|net|org|biz)\.au$/

根据需要修改由|'分隔的辅助列表。

如果您不介意严格验证次要TLD:

^[a-zA-Z0-9-]+\.\a+\.au$

如果您想允许更多子域名(即xxxx.yyyy.com.au):

^(?:[a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.\a+\.au$

如果您使用的特定正则表达式引擎不支持后者,则可能需要使用a-zA-Z而不是\a

答案 1 :(得分:0)

^[\w\d-\.]+\.au$

这应该可以正常工作。你不能真正做很多事情,因为.au之前可能会在the ones that already exist之上添加其他二级域名。

答案 2 :(得分:0)

(.*)\.([com|net|org|biz])\.au

答案 3 :(得分:0)

/^(?:[a-z0-9\-]+\.){2,}au$/i

用于preg_match()或其他PCRE功能:

if(preg_match('/^(?:[a-z0-9\-]+\.){2,}au$/i', $domain))
    echo "'$domain' is a valid domain\n";
else
    echo "'$domain' is invalid\n";