RegexKitLite 实现正则表达式
1.去RegexKitLite下载类库,解压出来会有一个例子包及2个文件,其实用到的就这2个文件,添加到工程中。
2.工程中添加libicucore.dylib frameworks。
3.现在所有的nsstring对象就可以调用RegexKitLite中的方法了。
1 NSString *email = @"kkk@aaa.com"; 2 3 [email isMatchedByRegex:@"\\b([a-zA-Z0-9%_.+\\-]+)@([a-zA-Z0-9.\\-]+?\\.[a-zA-Z]{2,6})\\b"]; 4 5 //返回YES,证明是email格式,需要注意的是RegexKitLite用到的正则表达式和wiki上的略有区别。 6 7 NSString *searchString = @"http://www.example.com:8080/index.html"; 8 9 NSString *regexString = @"\\bhttps?://[a-zA-Z0-9\\-.]+(?::(\\d+))?(?:(?:/[a-zA-Z0-9\\-._?,'+\\&%$=~*!():@\\\\]*)+)?"; 10 11 NSInteger portInteger = [[searchString stringByMatching:regexString capture:1L] integerValue]; 12 13 NSLog(@"portInteger: ‘%ld’", (long)portInteger); 14 15 // 2008-10-15 08:52:52.500 host_port[8021:807] portInteger: ‘8080′ 16 17 //取string中http的例子。
下面给出常用的一些正则表达式(其实就是RegexKitLite官网上的,怕同鞋偷懒不看)
同时需要注意的是转义字符哦~~在safari上复制会直接转换(网站蛮人性化的)
同时也提供了转换工具,safari测试支持,可能下载的时候有点慢,耐心等待,链接