我编写了方法来检测 :email 中的主机名是否存在于黑名单主机名的数组中,但无济于事我的方法几乎可以工作,但无法弄清楚:
host = email.split("@").last // e.g. "hotmail.com"
bad_hostnames = %w(rtrtr.com )
if /.*(#{bad_hostnames.join("|")}).*\@/.match(host)
errors.add(:email, "Invalid temp mail provider")
end
我在这里想念什么?正则表达式很难测试。似乎该点引起了问题,检查电子邮件中某些列入黑名单的单词的类似方法工作正常。