美文网首页
正则表达式判断

正则表达式判断

作者: 輩孒垨護 | 来源:发表于2016-08-10 11:33 被阅读0次

// 正则表达式来判断当前的email是否合法

-(BOOL)validateEmail:(NSString *)email{

//取邮箱首位字符

NSString *str = [email substringToIndex:1];

NSCharacterSet *nameCharacters = [[NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"] invertedSet];

//判断邮箱首字母是否为英文字母或数字

NSRange userNameRange = [str rangeOfCharacterFromSet:nameCharacters];

if (userNameRange.location != NSNotFound) {

return NO;

}

NSString *emailRegex = @"[A-Z0-9a-z_.]+@[A-Za-z0-9]+\\.[A-Za-z]{1,4}";

NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];

return [emailTest evaluateWithObject:email];

}

// 正则表达式来判断当前的手机号是否合法

- (BOOL)validateMobile:(NSString *)mobile

{

//手机号以13, 15,18开头,八个 \d 数字字符

NSString *phoneRegex = @"^1(3[0-9]|5[0-35-9]|8[025-9])\\d{8}$";

NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",phoneRegex];

return [phoneTest evaluateWithObject:mobile];

}

//判断是否含有特殊字符

-(BOOL)validateSpecialCharacters:(NSString *)characters

{

NSCharacterSet *nameCharacters = [[NSCharacterSet characterSetWithCharactersInString:@"_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"] invertedSet];

NSRange userNameRange = [characters rangeOfCharacterFromSet:nameCharacters];

if (userNameRange.location != NSNotFound) {

return NO;

}

return YES;

}

//判断密码是否合法

- (BOOL) validateUserPasswd : (NSString *) str

{

if (str) {

//密码改为8到16位字母或数字的组合

NSRegularExpression *regularexpression = [[NSRegularExpression alloc]

initWithPattern:@"^[a-zA-Z0-9]{8,16}$"

options:NSRegularExpressionCaseInsensitive

error:nil];

NSUInteger numberofMatch = [regularexpression numberOfMatchesInString:str

options:NSMatchingReportProgress

range:NSMakeRange(0, str.length)];

if(numberofMatch > 0)

{return YES;}}

return NO;}

//判断是否含有汉字

-(BOOL)validateCharacters:(NSString *)characters{

NSString *text = characters;unsigned long length = [text length];for (int i=0; i<length; i++){

NSRange range = NSMakeRange(i, 1);

NSString *subString = [text substringWithRange:range];

const char *cString = [subString UTF8String];

if (strlen(cString) == 3)

{

return NO;

}

return YES;

}

相关文章

  • 正则表达式汇总

    正则表达式判断

  • day18-正则表达式

    一、正则表达式语法 正则表达式是用来匹配或者描述字符串的工具。 用处:a.判断字符串是否满足某个条件 --> 判断...

  • 2018-10-23day18总结

    一、正则表达式语法 正则表达式是用匹配或者描述字符串的工具。 用处: a.判断字符串是否满足某个条件---判断输入...

  • Day18-正则表达式

    一、正则表达式语法 正则表达式是用匹配或者描述字符串的工具。 用处: a.判断字符串是否满足某个条件---判断输入...

  • day18-正则表达式

    一、正则表达式语法 正则表达式是用匹配或者描述字符串的工具。 用处: a.判断字符串是否满足某个条件---判断输入...

  • Day17-正则表达式

    一、正则表达式语法 正则表达式是用匹配或者描述字符串的工具。 用处: a.判断字符串是否满足某个条件---判断输入...

  • Python正则表达式实例详解!

    一、正则表达式语法 正则表达式是用匹配或者描述字符串的工具。 用处: a.判断字符串是否满足某个条件---判断输入...

  • Day-18 - 正则表达式(2018-10-23)

    一、正则表达式语法 正则表达式是用匹配或者描述字符串的工具 用处:a. 判断字符串是否满足某个条件---判断输入的...

  • 18总 正则表达式

    1.正则表达式语法: 正则表达式是用匹配或者描述字符串的工具。 用处:a.判断字符串是否满足某个条件---判断输入...

  • python-day18正则表达式

    一、正则表达式语法 正则表达式是用匹配或者描述字符串的工具。 用处:a.判断字符串是否满足某个条件---判断输入的...

网友评论

      本文标题:正则表达式判断

      本文链接:https://www.haomeiwen.com/subject/ljfjsttx.html