1

我需要从文本字符串中验证域名以处理以下内容:

www.dewalist.com
dewaxxxx.com
ng.dewalist.com
dewaster.com.au
test.co.uk
...
...

我可以使用 FILTER_VALIDATE_URL 但这只会验证完整的 url: http: //www.dewalist.com bla bla 这不是我真正想要的。

类似的功能,但不是用于电子邮件,而是用于域:

function extract_email_address ($string) 
    {
       $emails = array();
       $string = str_replace("\r\n",' ',$string);
       $string = str_replace("\n",' ',$string);

       foreach(preg_split('/ /', $string) as $token) {
            $email = filter_var($token, FILTER_VALIDATE_EMAIL);
            if ($email !== false) { 
                $emails[] = $email;
            }
        }
        return $emails;
    }
4

1 回答 1

1

您可以使用parse_url()将 URL 拆分为逻辑部分,而不是仅通过正则表达式验证您需要的部分。

http://php.net/parse_url

于 2013-10-01T04:32:46.170 回答