iOS中运用正则表达式

 

 

iOS中运用正则表达式来匹配短信验证码,电话号码,邮箱等是比较常见的。

在iOS中运用正则表达式主要有三种方式:

-:通过谓词下面是实例代码:

- (BOOL)regularExpresionWith:(NSString*)str{
   
    NSPredicate *pre = [NSPredicate predicateWithFormat:@"SELF MATCHES '^1[358][0-9]{9}$'"];
    BOOL isvalid = [pre evaluateWithObject:str];

    return isvalid;
 
   
}

 二:通过string方法:

- (BOOL)regularExpresionWith:(NSString*)str{
   
 
    NSString*regex = @"^1[358][0-9]{9}$";
    NSRange range = [str rangeOfString:regex options:NSRegularExpressionSearch];
    if (range.length == 0) {
        return NO;
    }
    return YES;;
   
}

 三:通过NSRegularExpression

    NSError *error = nil;
    NSRegularExpression *regular = [NSRegularExpression regularExpressionWithPattern: @"^([0-9]{6})$" options:0 error:&error];
    if (!error) {
        //result != null 代表能匹配
        NSTextCheckingResult *result = [regular firstMatchInString:str options:0 range:NSMakeRange(0, [str length])];
        NSLog(@"result ====%@",result);
    }else{
        NSLog(@"发生错误无法进行匹配!");
    }

 

posted @ 2016-07-26 22:17  菜鸟工程司  阅读(129)  评论(0编辑  收藏  举报