0118——RTLabel和正则表达式

     RTLabel和RegexKitLite都要导入第三方库

     

 

     使用Regexkitlite库进行正则表达式的解析

     1.库是使用MRR,如果在ARC工程里面使用这个类,必须在project->build phases->compile resources里面将regexKitLite.m的编译指令设为:-fno-objc-arc

     2.需要添加一个依赖库:libicucore.tbd

 

1.RTLable 富文本类库  替换成超链接

               

    RTLabel *lable = [[RTLabel alloc]initWithFrame:CGRectMake(10, 100, 300, 0)];

    lable.delegate = self;

    NSString * string = @"@张三123:正则表达式好学么,@李四:给你一个网站:http://www.baidu.com/image/2323_303.jpg,#学习#,电话号码:(025)-69716261";    

    lable.text =string;

    CGSize size =[lable optimumSize];  //计算尺寸

    lable.frame = CGRectMake(10, 100, size.width, size.height);

    NSString *regex = @"(@\\w+)|(#\\w+#)|(http(s)?://[0-9a-zA-Z./_]+)"; //正则表达式

    NSArray *result = [string componentsMatchedByRegex:regex];

    for (NSString * str in result) {

        NSString * newKeyword = [NSString stringWithFormat:@"<a href='http://www.baidu.com'>%@</a>",str];

        string = [string stringByReplacingOccurrencesOfString:str withString:newKeyword]; //替换文本

    }

    lable.text = string;

2.正则表达式

    NSString * str = @"@张三123:你在哪里呀?@李四:我在这!#在哪里# http://www.baidu.com 电话号码:(025)88888888,025-88888888";

    NSString * regex = @"@\\w+";

    NSString * regex = @"#\\w+#";

    NSString * regex = @"(@\\w+)|(#\\w+#)";

    NSString * regex = @"http(s)?://[0-9a-zA-Z./_]+";网址

    NSString * regex = @"(\\()?(\\d){3}(\\))?(-)?(\\d){8}";//电话号码

    NSArray * result = [str componentsMatchedByRegex:regex];

    for (NSString * str in result) {

        NSLog(@"%@",str);

    }

转载于:https://www.cnblogs.com/damonWq/p/5140340.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/257787.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

热带雨林绘画软件测试,儿童画教程|色彩练习与思维创想——好热闹的热带雨林!...

课程类型综合创意绘画课程参考课时90分钟工具材料勾线笔、水彩笔、卡纸课程构思小朋友们知道吗&#xff1f;热带雨林是地球上抵抗力和稳定性最高的生态系统&#xff0c;常年气候非常的炎热&#xff0c;雨量充沛&#xff0c;没有明显的季节差异&#xff0c;生物群落演替速度极快…

Linux命令行编辑快捷键

2019独角兽企业重金招聘Python工程师标准>>> ctrl ? 撤消前一次输入 ctrl c 另起一行 ctrl r 输入单词搜索历史命令 ctrl u 删除光标前面所有字符相当于VIM里d shift^ ctrl k 删除光标后面所有字符相当于VIM里d shift$ 删除 ctrl d 删除光标所在位置上的字符…

思科查看服务器启动配置文件,启动配置检查UCS

本文解释如何使用UCS将启动功能和命令迅速执行配置状态检查。UCS将启动功能允许用户迅速执行一粗略检查为了保证刀片适当地配置允许BIOS继续。意志启动配置检查是验证CPU和DIMM配置。此检查迅速帮助用户调试启动问题。思科UCS在意志启动配置检查提供几个工具帮助。这些工具包括…

lnmp下配置虚拟主机

一&#xff1a;首先熟悉几个命令 which php ---> which是通过 PATH环境变量到该路径内查找可执行文件&#xff0c;所以基本的功能是寻找可执行文件 whereis php ----> 将和php文件相关的文件都查找出来 service php-fpm/nginx/mysqld restart 重启服务 二&…

datazen Active Directory AD 配置

今天苦心经营的datazen 链接AD&#xff0c;文档已经无法吐槽了简单的几句话&#xff0c;根本不够用。 先说一下链接AD 的好处吧&#xff0c; 1 首先免去设置密码的麻烦&#xff0c;因为直接用AD账号的密码。 2 更安全&#xff0c;因为客户可不想自己的自己的系统&#xff0c;开…

Android CardView卡片布局 标签: 控件

CardView介绍 CardView是Android 5.0系统引入的控件&#xff0c;相当于FragmentLayout布局控件然后添加圆角及阴影的效果&#xff1b;CardView被包装为一种布局&#xff0c;并且经常在ListView和RecyclerView的Item布局中&#xff0c;作为一种容器使用。CardView应该被使用在显…

橱柜高度与身高对照表_下一套房子装修,橱柜就照这样打,布局尺寸这么详细,不信不好用...

闲在家的时候&#xff0c;动手给自己做一顿色香味俱全的美食&#xff0c;是一个享受的过程。享受的&#xff0c;不仅仅是味蕾的体验&#xff0c;择菜、洗菜、切菜、下锅...每一个环节都是。不过&#xff0c;这取决于你是否有一个好厨房&#xff1b;而厨房最最最重要的家具&…

.NET手记-JS获取Url参数

最近为App做活动专区&#xff0c;其中很多活动都是采用html 5页面来制作的。一方面体量较小&#xff0c;制作快速&#xff0c;更新维护容易&#xff1b;另一方面&#xff0c;嵌入App后适配效果也不会很差。 这里我们采用混编形式来从native app传参给web页面&#xff0c;我们采…

axios打包放到服务器上接口地址404_如何把网页文件放到云虚拟主机

把网页文件放到云虚拟主机上&#xff0c;可以用虚拟主机控制面板、FTP软件等方式。我们在运营网站时&#xff0c;经常需要制作一些特殊网页文件&#xff0c;比如404页面、sitemap页面、robots文件等&#xff0c;以及像站长平台严重文件、统计代码验证文件等&#xff0c;这些页面…

cisco数据中心理论小记-3

port channelSTP-防环,非根非指定口block.PCH-带宽利用率提升&#xff0c;逻辑上单链路 l2/l3都可以使用passive -LACP /active-Lacp/ on-Static无协议-on有协商-LACPneuxs 不支持PACPvPC---纯二层 技术&#xff0c;没有三层功能vitrual Port channel解决的是跨框 &#xff0c;…

-----------最小生成树----------------

最小生成树(Minimum Spanning Tree) 1:是一棵树(是一种特殊的图) 连通的,没有回路 有V 个顶点 一定有 V-1条边 2:生成树 包含了全部的顶点,所有的V-1条边 都在图里 剩下的三个土 都是第一个完全图的生成树 只要是 4个顶点 3条边 没有回路 就是生成树 这3个图 随便的加一…

jQuery Easing 使用方法及其图解

从jQuery API 文档中可以知道&#xff0c;jQuery自定义动画的函数.animate( properties [, duration] [, easing] [, complete] )有四个参数&#xff1a; properties&#xff1a;一组包含作为动画属性和终值的样式属性和及其值的集合duration(可选)&#xff1a;动画执行时间&am…

可以进行单元测试么_前端与单元测试

先来几个专业词汇&#xff0c;这样显得高大上一点&#xff08;不存在的。&#xff09;BDD: Behavior-Driven Development (行为驱动开发)TDD: Test-Driven Development (测试驱动开发)ATDD: Acceptance Test Driven Development(验收测试驱动开发)好&#xff0c;说完了&#xf…

excel 行高 上下留白_拒绝加班,工作中最常用的57个Excel小技巧来了!

今天高顿君分享的 Excel小技巧&#xff0c;全是工作是最常用且简单易操作的&#xff0c;共57个&#xff0c;希望对同学们有所帮助。&#xff08;适合版本 Excel2007及以上&#xff09;一、文件操作1、为excel文件添加打开密码文件 - 信息 - 保护工作簿 - 用密码进行加密。2、为…

经验分享:三步走教你升级企业NAS设备

前几年凡是对于数据存储有需求的企业都已经购买了相关的NAS产品&#xff0c;不过电脑和网络升级换代是比较频繁的&#xff0c;几年过去了中小企业对数据存储的需求也水涨船高&#xff0c;然而面对当初的NAS存储设备该如何处理呢&#xff1f;扔掉可惜使用又不如意的鸡肋问题能够…

获取访客进站关键词_拼多多访客突然下降是为什么?拼多多访客突然暴涨又是怎么回事?...

在当下这个互联网时代&#xff0c;可以说流量就代表这金钱。这一点在做电商的商家那里表现的就更为直观了&#xff0c;如果你做了一个拼多多的店铺&#xff0c;之前店铺的流量一直都比较好&#xff0c;而现在拼多多店铺的流量忽然下降了&#xff0c;那么店铺中的销售额就会受到…

通过Matlab实现离散序列卷积和

前言 年轻人&#xff0c;你对数学一无所知&#xff0c;你只是习惯了而已。—冯诺伊曼 Young man, in mathematics you dont understand things. You just get used to them.—John von Neumann。 一、卷积和是什么&#xff1f; 卷积的本质是描述一个瞬时动作&#xff08;激励…

mac电脑下Tomcat和Apach配置流程(超详细)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 前言 本章介绍在mac 电脑下如何配置Tomcat、Apach等环境 一、Apache介绍及配置 1.XAMPP安装 为了更好的进行各项软件服务的配置&#xff0c;引入快捷脚本工具——XMAPP。…

cvc 降噪_耳机降噪功能这么多,说说什么是ANC、ENC、CVC、DSP降噪

降噪功能对耳机的作用很重要&#xff0c;一是减少噪音&#xff0c;避免过度放大音量&#xff0c;从而减少对耳朵的损害。二是过滤噪音从而提高音质和通话质量。降噪可分为被动式降噪和主动式降噪。被动式降噪也就是物理降噪&#xff0c;被动式降噪是指利用物理特性将外部噪声与…

RPC 和 RESTful

2019独角兽企业重金招聘Python工程师标准>>> to do ... 转载于:https://my.oschina.net/u/2002769/blog/1505410