IOS开发微博中涉及到的一些正则表达式(表情,话题,链接,@)
2015-12-23 17:06
721 查看
// 需要正则的字符串 NSString *str = @"#呵呵呵#[偷笑] http://test.com/blah_blah"; // 表情的规则 NSString *emotionPattern = @"\\[[0-9a-zA-Z\\u4e00-\\u9fa5]+\\]"; // @的规则 NSString *atPattern = @"@[0-9a-zA-Z\\u4e00-\\u9fa5]+"; // #话题#的规则 NSString *topicPattern = @"#[0-9a-zA-Z\\u4e00-\\u9fa5]+#"; // url链接的规则 NSString *urlPattern = @"\\b(([\\w-]+://?|www[.])[^\\s()<>]+(?:\\([\\w\\d]+\\)|([^[:punct:]\\s]|/)))"; // | 匹配多个条件,相当于or\或 NSString *pattern = [NSString stringWithFormat:@"%@|%@|%@|%@", emotionPattern, atPattern, topicPattern, urlPattern]; // 使用系统的正则类来遍历 NSRegularExpression *regex = [[NSRegularExpression alloc] initWithPattern:pattern options:0 error:nil]; // 2.测试字符串 NSArray *results = [regex matchesInString:str options:0 range:NSMakeRange(0, str.length)]; // 3.遍历结果 for (NSTextCheckingResult *result in results) { NSLog(@"%@ %@", NSStringFromRange(result.range), [str substringWithRange:result.range]); }
相关文章推荐
- 【CF应用开发大赛】微博社交简历
- 微博回应“用户信息被出售”事件:已上报司法机关
- msql 正则表达式
- 正则表达式
- 我是运营,我没有假期
- [网络资讯]新浪微博新版三栏布局开放公测
- 开始我觉得新浪微博傻,现在才慢慢明白新浪微博的高瞻远瞩
- Mootools 1.2教程 正则表达式
- 批处理FINDSTR正则表达式用法实例分析
- vbs正则表达式代码
- C#正则表达式Regex类的常用匹配
- C#使用正则表达式实现首字母转大写的方法
- php中看实例学正则表达式
- PHP正则表达式之定界符和原子介绍
- jQuery+PHP+ajax实现微博加载更多内容列表功能
- PHP下常用正则表达式整理
- 批处理 正则表达式(findstr) 整理
- 详解C#正则表达式Regex常用匹配
- C#正则表达式的6个简单例子