密码验证使用hibernate bean验证

时间:2012-06-04 07:20:21

标签: java regex hibernate hibernate-validator

我正在尝试根据规则集验证用户输入密码,以下是这些规则。

  1. 最少6个,最多8个字符。
  2. Atleast 1号
  3. 首都的Atleast 1字母。
  4. 不允许使用特殊字符
  5. 这是我迄今为止在我的bean类中所做的事情

    @NotNull(message = "{register.pwd.invalid}")
        @Size(min = 6, max = 8, message = "{register.pwd.invalid}")
        public String getPwd()
        {
            return pwd;
        }
    

    我相信其余的部分我必须使用regExp,但不确定我需要的正则表达式,这就是我的意思

    ^.*(?=.{6,8})(?=.*\d)(?=.*[A-Z]).*$
    

    我不确定表达式,因为我在regExp中不好,任何人都可以帮我指出纠正regExp

2 个答案:

答案 0 :(得分:1)

你很亲密

^(?=.*\d)(?=.*[A-Z]).{6,8}$

不要在开始时使用.*(它会破坏长度检查)并将长度检查移到最后。

答案 1 :(得分:1)

删除第一个.*并锚定char限制,例如:

^(?=.*\d)(?=.*[A-Z]).{6,8}$