您的位置:首页 > 其它

正则表达:NSRegularExpression的用法

2014-10-15 15:31 260 查看
//校验用户名

+ (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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: