Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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
Regex Postfix阻止来自包含两个@符号的地址的电子邮件_Regex_Email_Postfix Mta_Sender - Fatal编程技术网

Regex Postfix阻止来自包含两个@符号的地址的电子邮件

Regex Postfix阻止来自包含两个@符号的地址的电子邮件,regex,email,postfix-mta,sender,Regex,Email,Postfix Mta,Sender,我的邮件服务器最近收到了大量带有恶意链接和附件的垃圾邮件,这些垃圾邮件来自包含来自我的域的有效地址并附加了@someotherdomain.hn地址的地址 例如: 约翰·史密斯的电子邮件地址是JohnSmith@mydomain.com 我收到的电子邮件地址为JohnSmith@mydomain.com@其他域名 我想知道,如果发件人地址包含多个@符号,是否可以阻止电子邮件。您标记为Regex,因此我假设您需要一个与地址匹配2个'@'符号的Regex 这是: /@.*@/ 这将匹配任何带有2个

我的邮件服务器最近收到了大量带有恶意链接和附件的垃圾邮件,这些垃圾邮件来自包含来自我的域的有效地址并附加了@someotherdomain.hn地址的地址

例如: 约翰·史密斯的电子邮件地址是JohnSmith@mydomain.com 我收到的电子邮件地址为JohnSmith@mydomain.com@其他域名

我想知道,如果发件人地址包含多个@符号,是否可以阻止电子邮件。

您标记为Regex,因此我假设您需要一个与地址匹配2个'@'符号的Regex

这是:

/@.*@/
这将匹配任何带有2个或更多@符号的地址

它只是以匹配的“@”开头,后跟零个或多个字符,最后是另一个“@”

如果存在匹配项,您只需删除邮件即可

编辑:

若要仅在一个邮件地址有两个“@”符号时匹配,而不是在两个地址都有一个@符号时匹配,可以使用此正则表达式,假设地址由逗号“,”分隔:


同样,如果存在匹配项,请将其删除。

或/@.*@/如果您还想用两个连续的@字符阻止地址。它稍微简单一点,因为它不使用+它作为扩展正则表达式和基本正则表达式都是有效的。请注意,/字符不是正则表达式的一部分;我们使用regex的任何工具都可能需要,也可能不需要。我也收到过类似的邮件。它们始终包含@s之间的有效电子邮件域。域当然是为了愚弄您。当然,但是使用/@.*@/更简单,它涵盖了您所关心的所有情况,加上两个连续的@字符,并且更便于移植到不同的正则表达式实现中。@Keith to please you:-谢谢您提供的信息。不幸的是,这似乎也会阻止具有两个目标电子邮件地址的邮件,因此我需要做更多的研究。用于编程问题,而不是关于使用或配置Linux服务器的问题。或者更适合回答这样的问题。
/@[^,]*@/