打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
iOS中系统自带正则表达式的应用

iOS中系统自带正则表达式的应用  

2012-05-31 12:23:43|  分类: iOS |  标签:regex   |字号 订阅

正则表达式在用户注册和登录中应用很广,通过正则表达式可以判断用户输入的数据正确与否。在iOS4.0以前开发者一般是通过谓词(NSPredicate)和加入正则表达式的第三方库(如:RegexKitLite)来实现。其实从iOS4.0开始系统已经原生支持了正则表达式的使用,系统通过自有类NSRegularExpression和NSTextCheckingResult来实现正则表达式的创建和筛选。
结合一个例子来说明具体的实现:

//组装一个字符串,把里面的网址解析出来
NSString *urlString = @"sfdshttp://www.baidu.com";
NSError *error;
//http+:[^\\s]* 这是检测网址的正则表达式
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"http+:[^\\s]*" options:0 error:&error];

if (regex != nil) {
NSTextCheckingResult *firstMatch = [regex firstMatchInString:urlString options:0 range:NSMakeRange(0, [urlString length])];

if (firstMatch) {
NSRange resultRange = [firstMatch rangeAtIndex:0];
//从urlString中截取数据
NSString *result = [urlString substringWithRange:resultRange];
NSLog(@"%@",result);
}
}
输出结果为:
[1302:403] http://www.baidu.com
可见通过iOS自带的正则表达式的类可以达到过滤和筛选字符串的功能。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
IOS正则表达式的实现
正则表达式不包含属性
Extjs 正则表达式的判断
正则表达式之分组
用正则表达式进行替换
正则表达式
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服