您的位置:首页 > 其它

iphone中使用第三方工具(RegexKitLite)实现正则表达式

2012-02-07 20:24 615 查看
原帖地址:http://www.minroad.com/?p=85

1.去RegexKitLite下载类库,解压出来会有一个例子包及2个文件,其实用到的就这2个文件,添加到工程中。

备用地址:

http://www.cocoachina.com/bbs/job.php?action-download-pid-135286-tid-18111-aid-11143.html

- Lv

2.工程中添加libicucore.dylib frameworks。

3.现在所有的nsstring对象就可以调用RegexKitLite中的方法了。

NSString *email = @”kkk@aaa.com”;

[email isMatchedByRegex:@"\\b([a-zA-Z0-9%_.+\\-]+)@([a-zA-Z0-9.\\-]+?\\.[a-zA-Z]{2,6})\\b”];

返回YES,证明是email格式,需要注意的是RegexKitLite用到的正则表达式和wiki上的略有区别。

searchString = @”http://www.example.com:8080/index.html”;

regexString = @”\\bhttps?://[a-zA-Z0-9\\-.]+(?::(\\d+))?(?:(?:/[a-zA-Z0-9\\-._?,'+\\&%$=~*!():@\\\\]*)+)?”;

NSInteger portInteger = [[searchString stringByMatching:regexString capture:1L] integerValue];

NSLog(@”portInteger: ‘%ld’”, (long)portInteger);

// 2008-10-15 08:52:52.500 host_port[8021:807] portInteger: ‘8080′

取string中http的例子。

下面给出常用的一些正则表达式(其实就是RegexKitLite官网上的,怕同鞋偷情不看)











同时需要注意的是转义字符哦~~在safari上复制会直接转换(网站蛮人性化的)



同时也提供了转换工具,safari测试支持,可能下载的时候有点慢,耐心等待,链接
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: