验证电子邮件 ID 中的 Preg 匹配问题

Preg Match Issues in validation email id

为什么下面的代码 returns 电子邮件 ID 为假或无效?

<?php
    $okay = preg_match(
        '/^[A-z0-9_\-]+[@][A-z0-9_\-]+([.][A-z0-9_\-]+)+[A-z.]{2,4}$/', 
        "caree.india.support@gmail.com"
    );
    echo $okay;
?>

PHP 本身已经有一个函数来验证电子邮件,我建议使用它而不是正则表达式。

<?php
    $email_a = 'caree.india.support@gmail.com';
    $email_b = 'Random words';

    if (filter_var($email_a, FILTER_VALIDATE_EMAIL)) {
        echo "This ($email_a) email address is considered valid.";
    }
    if (filter_var($email_b, FILTER_VALIDATE_EMAIL)) {
        echo "This ($email_b) email address is considered valid.";
    }
?>

可在此处找到更多相关信息:
http://php.net/manual/en/function.filter-var.php
http://php.net/manual/en/filter.examples.validation.php