Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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 电子邮件地址tld regex_Php_Regex_Email - Fatal编程技术网

Php 电子邮件地址tld regex

Php 电子邮件地址tld regex,php,regex,email,Php,Regex,Email,我很感激有几个电子邮件注册表,但找不到任何适合我的情况 我们的电子邮件系统使用此正则表达式失败: if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) { $domain_array = explode(".", $email_array[1]); if (sizeof($domain_array) < 2) { $this->result = 0; }

我很感激有几个电子邮件注册表,但找不到任何适合我的情况

我们的电子邮件系统使用此正则表达式失败:

 if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) {
        $domain_array = explode(".", $email_array[1]);
        if (sizeof($domain_array) < 2) {
            $this->result = 0;
        }
        for ($i = 0; $i < sizeof($domain_array); $i++) {
          if
(!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|?([A-Za-z0-9]+))$",
    $domain_array[$i])) {
            $this->result = 0;
          }
        }
      }
^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$ 
我想这是额外的价值。这就是造成问题的原因,我对正则表达式没有很好的经验来解决这个问题。有人能帮忙吗

正则表达式

^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|?([A-Za-z0-9]+))$

提前感谢。

如果您正在查看电子邮件验证,您应该使用比regex imho更好的功能

filter_var('my.name@some-text.value.domain.co.uk', FILTER_VALIDATE_EMAIL);

如果您正在查看电子邮件验证,您应该使用比regex imho更好的功能

filter_var('my.name@some-text.value.domain.co.uk', FILTER_VALIDATE_EMAIL);

或者您可以使用以下正则表达式:

 if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) {
        $domain_array = explode(".", $email_array[1]);
        if (sizeof($domain_array) < 2) {
            $this->result = 0;
        }
        for ($i = 0; $i < sizeof($domain_array); $i++) {
          if
(!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|?([A-Za-z0-9]+))$",
    $domain_array[$i])) {
            $this->result = 0;
          }
        }
      }
^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$ 

它与您给定的电子邮件相匹配,并与大多数电子邮件(99.99%左右)一起工作。

或者您可以使用以下正则表达式:

 if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) {
        $domain_array = explode(".", $email_array[1]);
        if (sizeof($domain_array) < 2) {
            $this->result = 0;
        }
        for ($i = 0; $i < sizeof($domain_array); $i++) {
          if
(!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|?([A-Za-z0-9]+))$",
    $domain_array[$i])) {
            $this->result = 0;
          }
        }
      }
^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$ 
它与您给定的电子邮件相匹配,并与大多数电子邮件(99.99%左右)一起工作。

正则表达式:

^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|?([A-Za-z0-9]+))$
应该匹配域名的各个部分。对吧?

因此,如果您使用some-text.value.subdomain.domain.co.uk作为域名

您的代码按点拆分,并尝试匹配每个子部分

例如,一些文本或子域

这将与上述正则表达式配合使用;就这个?之后|会分散正则表达式引擎的注意力

我会试试看

^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$
相反

虽然它仍然不是一个很好的正则表达式来匹配域名的各个部分。 但是我猜您希望在代码库中进行尽可能少的更改

一个更好的应该只是交替的最后一部分

^[A-Za-z0-9-]+$
正则表达式:

^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|?([A-Za-z0-9]+))$
应该匹配域名的各个部分。对吧?

因此,如果您使用some-text.value.subdomain.domain.co.uk作为域名

您的代码按点拆分,并尝试匹配每个子部分

例如,一些文本或子域

这将与上述正则表达式配合使用;就这个?之后|会分散正则表达式引擎的注意力

我会试试看

^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$
相反

虽然它仍然不是一个很好的正则表达式来匹配域名的各个部分。 但是我猜您希望在代码库中进行尽可能少的更改

一个更好的应该只是交替的最后一部分

^[A-Za-z0-9-]+$

我想知道您是否可以在接近末尾的正则表达式中使用TLD或允许的TLD列表,以匹配类似
xn--hgbk6aj7f53bba
和一些较新的TLD

在这种情况下,像这样的正则表达式
^([a-zA-Z0-9.\'+-])+\@([a-zA-Z0-9-])+(\。“ac(124)ac(124)ac(124)ad)ADA(124)ADA(124)ADA(124)ADA(124)ADA(124)ADA(124)ADA(ac)ADA(124)ADA(ac)ADA(124)AAAAAAAAo(124)af)af(124)ag)ag(124)ag)ai(124)ai)ai(124)al(124)al(124)阿方在场在场在场,阿方,阿方,aq(124)阿Q(124)阿Q(124)阿Q(阿方)阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,亚亚亚方,阿方,亚亚方,亚方,亚方,亚方,亚方,亚“B124学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学,学学学学学学学学学学学学学学学学学学学学,学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学,学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学欧盟(eseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseses学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学eseseseseseseseseses学学学学学学学学学学学学学学学学学学学学学学eseseseseseseseseses学学学学学学学学学学学学学学学eseseseseseseseseseseseseses学学学学学学学学学学学学学学学学学学学学eseseseseseseseseseseseseseseseseseseseseseseseses伊姆|(1244)信息量中文中文方音音(1244)音音音(1244)音音音音(1244)音音音音(1244)音音音(1244)音音音(1244)音音音(1244)音音音音音音音音(1244)音音音(1244)音)音(音)音)音(音)音(音)音(音)音(音)音(音)音)音(音)音(音)音(音)音(音)音(音)音)音(音)音(音)音(音)音)音(音)音(音)音(音)音(音)音(音)音(音)音(音)音(音)音(音)音)音(音)音(音)音(音(音)音)音(音)音(音)音(音)音)音)音(音(音)音(音)音(音)音(音)音)音)音(音)音医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学|om | org | pa | pe | pf | pg | ph | pk | pl | pm | pn | pr | ps | pt | pw | py | qa | re | ro | rs | ru rw | sa | sb sc | sd | se | sg s | sk(1240)o/1240 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0(12)六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈——六方会谈的六方会谈的六方会谈——六方会谈的六方会谈的六方会谈——六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈——xn——六方会谈——六方会谈——六方会谈——六方会谈——六方会谈的六方会谈——六方会谈的六方会谈的六方会谈的六方会谈——六方会谈——六方会谈的六方会谈的六方会谈的六方会谈——六方会谈——六方会谈——六方会谈的六方会谈的六方会谈|zw)+$


应该可以工作-很抱歉格式混乱。

我想知道您是否可以在接近末尾的正则表达式中使用TLD或允许的TLD列表-以匹配类似
xn--hgbk6aj7f53bba
和一些较新的TLD

在这种情况下,像这样的正则表达式
^([a-zA-Z0-9.\'+-])+\@([a-zA-Z0-9-])+(\。“ac(124)ac(124)ac(124)ad)ADA(124)ADA(124)ADA(124)ADA(124)ADA(124)ADA(124)ADA(ac)ADA(124)ADA(ac)ADA(124)AAAAAAAAo(124)af)af(124)ag)ag(124)ag)ai(124)ai)ai(124)al(124)al(124)阿方在场在场在场,阿方,阿方,aq(124)阿Q(124)阿Q(124)阿Q(阿方)阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,阿方,亚亚亚方,阿方,亚亚方,亚方,亚方,亚方,亚方,亚“B124学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学,学学学学学学学学学学学学学学学学学学学学,学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学,学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学欧盟(eseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseseses学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学eseseseseseseseseses学学学学学学学学学学学学学学学学学学学学学学eseseseseseseseseses学学学学学学学学学学学学学学学eseseseseseseseseseseseseses学学学学学学学学学学学学学学学学学学学学eseseseseseseseseseseseseseseseseseseseseseseseses伊姆|(1244)信息量中文中文方音音(1244)音音音(1244)音音音音(1244)音音音音(1244)音音音(1244)音音音(1244)音音音(1244)音音音音音音音音(1244)音音音(1244)音)音(音)音)音(音)音(音)音(音)音(音)音(音)音)音(音)音(音)音(音)音(音)音(音)音)音(音)音(音)音(音)音)音(音)音(音)音(音)音(音)音(音)音(音)音(音)音(音)音(音)音)音(音)音(音)音(音(音)音)音(音)音(音)音(音)音)音)音(音(音)音(音)音(音)音(音)音)音)音(音)音医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学院医学|om | org | pa | pe | pf | pg | ph | pk | pl | pm | pn | pr | ps | pt | pw | py | qa | re | ro | rs | ru rw | sa | sb sc | sd | se | sg s | sk(1240)o/1240 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0(12)六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈——六方会谈的六方会谈的六方会谈——六方会谈的六方会谈的六方会谈——六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈的六方会谈——xn——六方会谈——六方会谈——六方会谈——六方会谈——六方会谈的六方会谈——六方会谈的六方会谈的六方会谈的六方会谈——六方会谈——六方会谈的六方会谈的六方会谈的六方会谈——六方会谈——六方会谈——六方会谈的六方会谈的六方会谈|zw)+$


应该可以工作-抱歉格式混乱。

请查看。不要使用正则表达式验证电子邮件地址。这是实时系统修复所必需的,在这个阶段没有机会进行太多更改。ereg不推荐使用:像:
jean+franç这样的有效电子邮件怎么样ois@anydomain.tld
正则表达式需要满足任何email地址。但当前的代码分别使用地址和域。请参阅。不要使用正则表达式验证电子邮件地址。这是实时系统修复所必需的,在这个阶段没有机会进行太多更改。ereg不推荐使用:像:
jean+franç这样的有效电子邮件如何ois@anydomain.tld
regex-needs可以满足任何电子邮件地址的需要。但是当前的代码将地址和域分开。如果您查看
filter\u var()
的源代码cold,您会发现它的验证当然是基于正则表达式的,但这仍然比在代码中编写自己的正则表达式要好。是的,但该函数“工作起来并不比正则表达式更好”因为它是一个正则表达式。它使用的正则表达式比OP的正则表达式工作得更好。如果你看一下
filter\u var()
的source cold,你会发现它的验证当然是基于正则表达式的,但这仍然是错误的