我需要一个快速的regexp来验证字符串是否是有效的.au域名。例如:
xxx.com.au
xxx.net.au
xxx.org.au
xxx.biz.au
xxx.--.au
所有这些都应被视为有效。
对于像我一样没有绝望的人来说,这应该是非常简单的。有什么想法吗?
答案 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";