Objective-C RegEx-Password-Check始终为真

时间:2012-09-09 11:46:17

标签: objective-c regex xcode passwords expression

我想用正则表达式检查密码的复杂性。 但它总是返回true

密码的复杂性如下。允许的是:

  • A-Z
  • A-Z
  • 0-9
  • 特殊字符: - _ ,; 。 :#+ *? =! §$%& /()@
  • 空白字符

这是我的代码:

NSString *regExPwd = @"[a-zA-Z_0-9\\-_,;.:#+*?=!§$%&/()@]+";
NSPredicate *pwdCheck = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regExPwd];
bool isValid = [pwdCheck evaluateWithObject:txtPassword.text];

希望你能再次帮助我:)。

1 个答案:

答案 0 :(得分:2)

您应该要求从开头到结尾都有允许的字符:

NSString *regExPwd = @"^[a-zA-Z_0-9\\-_,;.:#+*?=!§$%&/()@]+$";