我们的一位客户在通过对我们系统的 API 调用触发电子邮件地址之前,在他们自己的软件中验证电子邮件地址。然而,问题是他们的验证规则与我们的系统不匹配,因此他们正在解析和接受违反我们规则的地址。这导致了很多失败的调用。
他们正在解析诸如“dave@-whatever.com”之类的东西,这违反了 RFC 952/RFC 1123 规则,因为它以连字符开头。他们要求我们向他们提供我们的正则表达式列表,以便他们可以在他们的平台上更新验证以匹配我们的。
所以,我需要找到/建立一个接受的 RFC 952/RFC 1123。我在另一个 SO 线程中发现了这个(我是一个潜伏者 :)),它是否适合并防止这些非法域被发送?
"^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$";