加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式NSRegularExpression

发布时间:2020-12-14 01:15:50 所属栏目:百科 来源:网络整理
导读:原文链接:http://www.jb51.cc/article/p-dpglihsk-rd.html 在Android开发中正则表达式用处很大 Java的正则表达式功能也很强 iOS中同样也可以用正则表达式 就是 NSRegularExpression 先分享一个正则表达式在线测试网 http://regexpal.com 可以测试写出来的表

原文链接:http://www.52php.cn/article/p-dpglihsk-rd.html


在Android开发中正则表达式用处很大

Java的正则表达式功能也很强


iOS中同样也可以用正则表达式

就是NSRegularExpression


先分享一个正则表达式在线测试网

http://regexpal.com


可以测试写出来的表达式是否正确


接下来就直接举个例子

<item>what a day</item>

这是一个字符串

需要做的就是把<item></item>之间包裹的内容提取出来


代码如下

[html] view plain copy
  1. NSString*content=@"<item>whataday</>";
  2. NSString*pattern=@">(.+)>";
  3. NSRegularExpression*regex=[NSRegularExpressionregularExpressionWithPattern:patternoptions:NSRegularExpressionCaseInsensitiveerror:nil];
  4. NSArray*matches=[regexmatchesInString:contentoptions:NSRegularExpressionCaseInsensitiverange:NSMakeRange(0,content.length)];
  5. if(matches){
  6. for(NSTextCheckingResult*matchinmatches){
  7. for(inti=0;i<match.numberOfRanges;++i){
  8. NSLog(@"->%@",[contentsubstringWithRange:[matchrangeAtIndex:i]]);
  9. }
  10. }
  11. }

输出结果

-> <item>what a day</item>

-> what a day


pattern很简单就是

<item>(.+)</item>

匹配的结果放在一个NSArray里头

而每个匹配里又分成几个结果 (个数由pattern中包含几个组而决定 这里只有一个组就是 "(.+)")

第一个结果就是匹配本身


<item>what a day</item>而其中想要的内容就是第二个结果

今天的分享就这些


其他资料:

http://zhuhaibobb.blog.163.com/blog/static/27440067201411752450958/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读