我正在尝试验证我的密码是否不包含任何连续字符,例如“123”或“abcd”等。我是正则表达式的新手,我正在尝试通过在我的密码中包含以下代码来实现这一点用户模型:
validate :password_complexity
def password_complexity
if password.present? and not password.match(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d). /)
errors.add :password, "must include at least one lowercase letter, one uppercase letter, and one digit"
end
end
最佳答案
这可能有点超出了正则表达式的范围。我建议查看 zxcvbn ,也已被移植到 a ruby gem of the same name甚至存在为 a devise plugin 。这将为您提供更加可靠的验证。如果您决心了解如何从头开始实现这样的事情,您也可以考虑检查这些项目的代码来获取灵感。
关于ruby-on-rails - 非序列数据的正则表达式密码验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33822704/