通过正则表达式阻止 php 中特定类型的电子邮件地址
block specific type of email address in php via regex
我使用以下正则表达式模式来验证工作正常的电子邮件地址。
/^[^\@]+@.*\.[a-z]{2,6}$/i
但问题是如果输入 abc.abc@yahoo.com
之类的电子邮件,我想生成错误。实际上所有这些电子邮件都是无效的,它们的字符与 **.**
之前和之后相同,例如 xyz.xyz@gmail.com
无效,qwe.qwe@hotmail.com
无效
您可以在正则表达式中使用 back-reference 来测试两个部分是否相同。在 PHP 你会写:
if (preg_match('/^(\w+)\.@.*/', $email)) {
echo "That's a spammy name";
}
我使用以下正则表达式模式来验证工作正常的电子邮件地址。
/^[^\@]+@.*\.[a-z]{2,6}$/i
但问题是如果输入 abc.abc@yahoo.com
之类的电子邮件,我想生成错误。实际上所有这些电子邮件都是无效的,它们的字符与 **.**
之前和之后相同,例如 xyz.xyz@gmail.com
无效,qwe.qwe@hotmail.com
无效
您可以在正则表达式中使用 back-reference 来测试两个部分是否相同。在 PHP 你会写:
if (preg_match('/^(\w+)\.@.*/', $email)) {
echo "That's a spammy name";
}