正则表达:NSRegularExpression的用法

来源:互联网 发布:龙珠超 知乎 编辑:程序博客网 时间:2024/05/20 20:03
//校验用户名  

+ (BOOL) validateUserName : (NSString *) str 
{  
    NSString*patternStr = [NSStringstringWithFormat:@"^.{0,4}$|.{21,}|^[^A-Za-z0-9u4E00-u9FA5]|[^\wu4E00-u9FA5.-]|([_.-])1"]; 
   NSRegularExpression *regularexpression = [[NSRegularExpressionalloc]   
                                             initWithPattern:patternStr  
                                             options:NSRegularExpressionCaseInsensitive  
                                             error:nil];  
    NSUIntegernumberofMatch = [regularexpressionnumberOfMatchesInString:str  
                                                                 options:NSMatchingReportProgress  
                                                                   range:NSMakeRange(0, str.length)];  
     
   [regularexpression release];  
     
   if(numberofMatch > 0)  
   
       return YES;  
   
    return NO; 
}  
 
//校验用户密码  
+ (BOOL) validateUserPasswd : (NSString *) str 
{  
     
   NSRegularExpression *regularexpression = [[NSRegularExpressionalloc]   
                                             initWithPattern:@"^[a-zA-Z0-9]{6,16}$"
                                             options:NSRegularExpressionCaseInsensitive  
                                             error:nil];  
    NSUIntegernumberofMatch = [regularexpressionnumberOfMatchesInString:str  
                                                                 options:NSMatchingReportProgress  
                                                                   range:NSMakeRange(0, str.length)];  
     
   [regularexpression release];  
     
   if(numberofMatch > 0)  
   
       NSLog(@"%@ isNumbericString: YES", str);  
       return YES;  
   
     
    NSLog(@"%@isNumbericString: NO", str);  
    return NO; 
}  
 
//校验用户生日  
+ (BOOL) validateUserBornDate : (NSString *) str 
{  
     
    NSString*patternStr =@"^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$"; 
   NSRegularExpression *regularexpression = [[NSRegularExpressionalloc]   
                                             initWithPattern:patternStr  
                                             options:NSRegularExpressionCaseInsensitive  
                                             error:nil];  
    NSUIntegernumberofMatch = [regularexpressionnumberOfMatchesInString:str  
                                                                 options:NSMatchingReportProgress  
                                                                   range:NSMakeRange(0, str.length)];  
     
   [regularexpression release];  
     
   if(numberofMatch > 0)  
   
       NSLog(@"%@ isNumbericString: YES", str);  
       return YES;  
   
     
    NSLog(@"%@isNumbericString: NO", str);  
    return NO; 
}  
 
//校验用户手机号码  
+ (BOOL) validateUserPhone : (NSString *) str 
{  
   NSRegularExpression *regularexpression = [[NSRegularExpressionalloc]   
                                             initWithPattern:@"((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)"
                                             options:NSRegularExpressionCaseInsensitive  
                                             error:nil];  
    NSUIntegernumberofMatch = [regularexpressionnumberOfMatchesInString:str  
                                                                 options:NSMatchingReportProgress  
                                                                   range:NSMakeRange(0, str.length)];  
     
   [regularexpression release];  
     
   if(numberofMatch > 0)  
   
       NSLog(@"%@ isNumbericString: YES", str);  
       return YES;  
   
     
    NSLog(@"%@isNumbericString: NO", str);  
    return NO; 
}  
 
//校验用户邮箱  
+ (BOOL) validateUserEmail : (NSString *) str 
{  
   NSRegularExpression *regularexpression = [[NSRegularExpressionalloc]   
                                             initWithPattern:@"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"
                                             options:NSRegularExpressionCaseInsensitive  
                                             error:nil];  
    NSUIntegernumberofMatch = [regularexpressionnumberOfMatchesInString:str  
                                                                 options:NSMatchingReportProgress  
                                                                   range:NSMakeRange(0, str.length)];  
     
   [regularexpression release];  
     
   if(numberofMatch > 0)  
   
       NSLog(@"%@ isNumbericString: YES", str);  
       return YES;  
   
     
    NSLog(@"%@isNumbericString: NO", str);  
    return NO; 
}
0 0
原创粉丝点击