Я разрабатываю одно приложение, связанное с транзакцией денег. Поэтому на экране регистрации пользователя я хочу установить сильное ограничение на пароль.Регулярное выражение для надежного пароля
Здесь требование,
1) Пароль должен должен быть один строчная, одна заглавная буква, один специальный символ (включая все виды специального символа.).
2) пробел и номер не является обязательным, но если пользователь хочет ввести затем принять его,
3) Длина пароля должна быть больше 6 полукокса.
Ниже, что я сделал.
-(BOOL) isPasswordValid:(NSString *)pwd
{
NSString *password = pwd;
NSLog(@"Password ==> %@",pwd);
NSString *scPattern = @"[a-z]";
NSString *cPattern = @"[A-Z]";
// !~`@#$%^&*-+();:={}[],\'.<>?\\/\"
// @"[@!%&\._;,]"
NSString *sPattern = @"^\\w+(+\\w+)*$";
if ((6 <= password.length) && [self string:password matches:scPattern] && [self string:password matches:cPattern] && [self string:password matches:sPattern])
{
return YES;
}
else
return NO;
}
И звоню выше функции, как
if([self isPasswordValid])
{
/// Your password is valid;
}
else
{
/// Your password is not valid
}
Когда я вхожу, как @ Aa123#"
, но каждый раз, когда я получаю /// Your password is not valid
Кто-нибудь есть какие-либо идеи о том, как я могу получить ожидаемый результат? По регулярному выражению или любым другим трюком?
Спасибо.
'spattern' всегда будет терпеть неудачу на' специальной characters' – vks
Да, я попытался так много топот за это, но не получает результата. У вас есть идея? Тогда, пожалуйста, поделитесь здесь. Спасибо :) – iPatel
Сделайте spurntern как '^ \\ S + (+ \\ S +) * $' – vks