2012-03-13 73 views
0

我想用NSRegularExpression來測試我的密碼的有效性。我的密碼應該有5個或更多的caractèers。我怎麼能做到這一點?謝謝NSregularExpression和密碼

NSRegularExpression *passwordRegex = [NSRegularExpression regularExpressionWithPattern:@"???" 
                         options:NSRegularExpressionCaseInsensitive 
                         error:&error]; 
+0

你是什麼意思的5個字符:無論字符,字母,...? – sch 2012-03-13 12:28:41

回答

1

您可以使用密碼字符串的長度。

至於正則表達式,你可以使用這個:@".{5,}"

NSRegularExpression *passwordRegex = [NSRegularExpression regularExpressionWithPattern:@".{5,}" options:NSRegularExpressionCaseInsensitive error:nil]; 
int numberMatches = [passwordRegex numberOfMatchesInString:password options:0 range:NSMakeRange(0, password.length)]; 
BOOL validPassword = numberMatches > 0; 

如果你想只接受某些類型的字符,那麼你可以使用下面的正則表達式:

  1. @"^[A-Za-z]{5,}$「:字母只
  2. @"^[A-Za-z0-9]{5,}$":字母和數字
1

你不需要一個正則表達式來做到這一點。如果您將其與字符串進行比較,請使用以下代碼:

if(string.length < 5) 
{ 
    [user getAngry:WithWeapon:]; 
}