Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用正则表达式验证具有特定域的电子邮件_Php_Regex_Validation_Preg Match_Expression - Fatal编程技术网

Php 使用正则表达式验证具有特定域的电子邮件

Php 使用正则表达式验证具有特定域的电子邮件,php,regex,validation,preg-match,expression,Php,Regex,Validation,Preg Match,Expression,我已经玩了一个小时这个表达,我似乎无法让它工作。我需要验证某个域的电子邮件。电子邮件的格式必须为: 名字。lastname@abc.domain 域可以是.ca.com或.org,名字和姓氏必须介于4到10个字符之间。这是我现在掌握的密码 /^[a-z]{4,10}\.[a-z]{4,10}[@]abc\.(com|ca|org)$/i 有人能看出我做错了什么吗?提前谢谢你 如果您试图验证电子邮件地址,则使用 filter_var('bob@example.com', FILTER_VALID

我已经玩了一个小时这个表达,我似乎无法让它工作。我需要验证某个域的电子邮件。电子邮件的格式必须为:

名字。lastname@abc.domain

域可以是.ca.com或.org,名字和姓氏必须介于4到10个字符之间。这是我现在掌握的密码

/^[a-z]{4,10}\.[a-z]{4,10}[@]abc\.(com|ca|org)$/i

有人能看出我做错了什么吗?提前谢谢你

如果您试图验证电子邮件地址,则使用

filter_var('bob@example.com', FILTER_VALIDATE_EMAIL)

手动操作:

在这里使用
preg\u match
可以很好地工作。什么对你不起作用?在这里起作用:我的姓氏超过10个字符,我的朋友MAX的名字有3个字母,为什么要限制大小?@Dagon:asker的格式非常严格<代码>筛选器_var()在这种特殊情况下过于苛刻。如果他没有试图将其限制在一个非常特定的格式和领域,我会同意你的看法。那它不起作用呢?它是完全不匹配还是匹配错误的东西?另外,你能粘贴这个正则表达式使用的代码吗?