【发布时间】:2014-09-01 16:12:27
【问题描述】:
在我的应用程序中,我接受用户的密码,该密码应采用以下格式:-
- 区分大小写和
- 长度必须至少为 6 个字符,
- 至少包括
- 一个字母 (a-Z),
- 一个数字 (0-9) 和
- 以下特殊字符之一:!=+*;:-,._{[()]}#%?@
因此,按照此处给出的教程进行操作: http://www.mkyong.com/regular-expressions/how-to-validate-password-with-regular-expression/ 我创建了自己的模式:-
private static final String PASSWORD_PATTERN = "($\\S*(?=\\S{6,})(?=\\S*[a-z])(?=\\S*[A-Z])(?=\\S*[\\d])(?=\\S*[\\W])\\S*$)";
但它不能正常工作。如果我按照模式输入正确的密码值,它仍然会向我显示错误。
请告诉我这里发生了什么;有什么错误?
这是我的代码:-
PWD_Validate = new PasswordValidator();
String password = TXT_PassWord.getText().toString();
if (PWD_Validate.validate(password))
{
}
else{ } it takes me every time in else block, even I entered a correct passwaord.
【问题讨论】:
-
请发布您的代码
-
嗨 Aniruddha,PasswordValidatorTest 类与链接上给出的相同,只需将 password_pattern 字符串替换为我上面给定的字符串。在我的活动中休息,我正在验证上面给出的按钮点击。我已经在上面发布了我的代码。
-
我想知道您是如何从 edittext 获取值的。
-
您好,我已经发布了代码,请检查
-
你什么时候从edittext获取值?点击按钮?
标签: android regex validation passwords