[iOS]利用系统NSRegularExpression使用正则表达式

//  Created by 李东旭 on 16/1/22.

//  Copyright © 2016年 李东旭. All rights reserved.

//

 

#import <UIKit/UIKit.h>

#import "ViewController.h"

 

 

 

@interface ViewController ()

 

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

    // 使用系统的类使用正则表达式(当然你也可以使用第三方RegexKitLite这个类)

    // 1. 获取字符串

    NSString *user = @"abc123def456kasdf999";

    

    // 2. 定义正则表达式(规则)

    // 如果我们的规则是“abc” 然后字符串是"abcdsafasdfabcdsaf" 那么找到的就是2个,说白了,正则表达式就是找东西用的

    

    // 这里假设查找数字  (后面字符串就是条件,具体要查什么,可以上网百度或者看http://www.cnblogs.com/lidongxu/p/5153707.html)

    NSString *patter = @"[0-9]";

    

    // 3. 创建NSRegularExpression(调用正则表达式)(在iOS4开始)

    NSRegularExpression *regular = [[NSRegularExpression alloc] initWithPattern:patter options:0 error:nil];

    

    // 4. 测试字符串(最后设置测试哪部分,这里设置字符串user全部)

    NSArray *resultArr = [regular matchesInString:user options:0 range:NSMakeRange(0, user.length)];

    

    

    // 5.遍历结果

    for (NSTextCheckingResult *result in resultArr) {

        // 打印匹配的字符串在user的位置

        NSLog(@"%@", NSStringFromRange(result.range));

    }

    

    

    

}

 

@end
复制代码
posted @ 2016-03-03 21:54  WE丶301  阅读(301)  评论(0编辑  收藏  举报