Регулярное выражение для проверки доменных имен .au - PullRequest
1 голос
/ 06 августа 2009

Мне нужно быстрое регулярное выражение для проверки того, что строка является допустимым доменным именем .au. Например:

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

все они должны считаться действительными.

Это должно быть довольно просто для кого-то, кто не так безнадежен с регулярными выражениями, как я. Есть идеи?

Ответы [ 4 ]

3 голосов
/ 06 августа 2009

Если вы хотите разрешить только определенные вторичные TLD в пространстве .au:

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

Измените список вторичных серверов, разделенных символами | по вашему желанию.

Если вы не возражаете против строгой проверки второго ДВУ:

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

И если вы хотите разрешить больше поддоменов (например, xxxx.yyyy.com.au):

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

Возможно, вам придется использовать a-zA-Z вместо \a, если используемый вами движок регулярных выражений не поддерживает последний.

0 голосов
/ 06 августа 2009
/^(?:[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";
0 голосов
/ 06 августа 2009
(.*)\.([com|net|org|biz])\.au
0 голосов
/ 06 августа 2009
^[\w\d-\.]+\.au$

Это должно работать нормально. Вы не можете сделать больше ничего, поскольку то, что происходит до того, как .au может добавить другие домены второго уровня поверх тех, которые уже существуют .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...