我们收到了很多表单中的垃圾邮件femlmcte@tnbt.com
。
我可以看到 cPanel 垃圾邮件刺客允许使用正则表达式匹配来过滤邮件。
我想写一个正则表达式来识别表单中的邮件
anylengthofstrring@abcd.com
或者
someotherlength@efgh.co.za
即在@之后只有四个字母,但在.com、.co.uk、.co.za 等之前
我们收到了很多表单中的垃圾邮件femlmcte@tnbt.com
。
我可以看到 cPanel 垃圾邮件刺客允许使用正则表达式匹配来过滤邮件。
我想写一个正则表达式来识别表单中的邮件
anylengthofstrring@abcd.com
或者
someotherlength@efgh.co.za
即在@之后只有四个字母,但在.com、.co.uk、.co.za 等之前
尝试以下操作:
[^@]+@[a-zA-Z]{4}\.(com|co\.uk|co\.za)
解释:
[^@]+@ # One or more characters except @ followed by @
[a-zA-Z]{4} # Matches 4 characters in the range A-Z and a-z
\.(com|co\.uk|co\.za) # Matches .com, .co.uk, and .co.za
如果您想匹配任何顶级域名,请替换(com|co\.uk|co\.za)
为.*
(我假设由于您收到这些电子邮件,您已经知道它们是有效的,因此无需验证顶级域名)。
另请注意,根据您当前的标准,您会将来自 的某些内容视为垃圾邮件admin@food.com
,这可能是您想要的,也可能不是。
所以你想匹配一个 at 符号后跟 4 个非点字符,然后是一个点?该规范很容易转换为正则表达式:
@[^.]{4}\.