2017-05-18 30 views
0

我在Javascript以下正则表达式:转换的Javascript reg表达式到PHP

function EMailRegularExpression(txtEMail) 
{ 
    var RegExpression = /^[a-zA-Z0-9._-][email protected][a-zA-Z0-9.-]+[\.]{1}[a-zA-Z]{2,4}$/; 

    if(txtEMail.toString().match(RegExpression)) return true; 
    else return false; 

} 

任何人都知道如何将其转换为PHP?

+0

看看[的preg_match(http://php.net/manual/ en/function.preg-match.php) – ArtOsi

+0

我正在投票结束这个问题,因为在PHP中编写正则表达式检查在本网站和Web上都有详细记录。请尝试编写代码,如果您在运行时遇到问题,请发布一个新问题。 – AndrewR

回答

2

您可以使用:

function some_function($email) 
{ 
    if (preg_match('/^[a-zA-Z0-9._-][email protected][a-zA-Z0-9.-]+[\.]{1}[a-zA-Z]{2,4}$/', $email)) { 
     return true; 
    } else { 
     return false; 
    } 
} 

或者干脆@AndrewR为指出:

function some_function($email) 
{ 
    return preg_match('/^[a-zA-Z0-9._-][email protected][a-zA-Z0-9.-]+[\.]{1}[a-zA-Z]{2,4}$/', $email); 
} 
+0

这是一种反模式。 if语句是多余的。 [从函数返回布尔值](https://github.com/Rafase282/My-FreeCodeCamp-Code/wiki/Lesson-Returning-Boolean-Values-From-Functions) – AndrewR

+0

当然,你可以简单地使用'return preg_match( “/^[a-zA-Z0-9._-][email protected][a-zA-Z0-9.-]+[\.]{1}[a-zA-Z]{2,4}$/ ',$ email);'但是对于一些用户来说可能很难阅读。 –