我想用java做一个注册系统。进展很顺利。我只有一个具体的问题。密码的弱点。我做的,密码必须超过8个字符与一个简单的
if(password.getText().length() > 8) { error message }
我还提出了这样一个条件:
if(... < 8 || !(password.getText().contains("1"))) { error message }
但在这个条件下,它只接受密码,如果你的密码例如:asdfghjk1,所以我尝试了很多| |条件,如!。。。。包含(“2”)!。。包含(“9”)
但在这些条件下,它只在密码为:123456789时起作用,但我真正想做的是一个密码,长度超过8个字符,至少包含一个大写字母和一个数字。有办法吗?顺便说一下,我使用javaswing。
2条答案
按热度按时间col17t5w1#
你可以用正则表达式,但我不知道怎么做。但这应该行得通:
在这里验证密码:string passwordstring=password.gettext();
这是我使用的ascii码:
这是校验位:
knpiaxh12#
解决这个问题的最好方法是使用regex。这里我给你举一个如何使用regex检查密码的例子。
输出:true false false
您也可以通过以下链接参考类似主题:
用于密码的regex java