- (void)viewDidLoad {
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor yellowColor];
    //这个是你请求的 东西
    NSString *stringlabel = @"hello的期望Word的期望";
    UILabel *label  = [[UILabel alloc]initWithFrame:CGRectMake(10, 70, 300, 50)];
    label.backgroundColor = [UIColor redColor];
    [self.view addSubview:label];
    //把你请求下来的数据NSString转换为 NSMutableAttributedString 这个是可以变颜色的可变string
    NSMutableAttributedString * attStr = [[NSMutableAttributedString alloc]initWithString:stringlabel];
    //符合中文的正则表达式
    NSString *string =@"[\u4E00-\u9FA5]";
    NSError *error;
    //创建正则表达式
    NSRegularExpression *regex = [[NSRegularExpression alloc] initWithPattern:string options:0 error:&error];
    if (!error)
    {
        //遍历字符串,获得所有的匹配字符串
        NSArray * arr = [regex matchesInString:stringlabel options:0 range:NSMakeRange(0, stringlabel.length)];
        // 遍历匹配后的每一条记录
        for (NSTextCheckingResult *match in arr) {
            NSRange range = [match range];
            NSLog(@"----%d", range);
            //遍历 拿到符合要求的 range 然后根据 range 让他改变颜色
        //http://www.cnblogs.com/taintain1984/p/3550525.html 这个是网站  你看一下
            [attStr addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(range.location, range.length)];
            //这个东西对英文 改变比较大 对中文不大你可以试试
            [attStr addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial-ItalicMT" size:20.0] range:NSMakeRange(0, 5)];
            //然后把你的 应该用的label 的这个属性text 接受 这个可变的 String
            label.attributedText = attStr;
        }
    }

}

一个label 里面 显示中文和英文不同颜色的更多相关文章

  1. 微软BI 之SSRS 系列 - 如何实现报表标签的本地化 - 中文和英文的互换

    SSRS 中并没有直接提供本地化的配置方式,因此在 SSRS 中实现本地化,比如有英文标题还有可选的中文标题,就需要通过其它的方式来解决. 比如默认是这样的英文标题 - 但是本地中方用户可能比较喜欢看 ...

  2. 小米2S 中文和英文支持TWRP,真实双系统支持

    经过我几天的努力小米2S的TWRP 的功能已经完美了. 支持功能 : 中文和英文显示能相互切换 真实双系统功能已经完成95%. 刷入手机方法.由于时间原因我只制作了img文件.没有制作成卡刷包格式. ...

  3. git status 显示中文和解决中文乱码

    目录 git status 显示中文和解决中文乱码 解决git status不能显示中文 解决git bash 终端显示中文乱码 通过修改配置文件来解决中文乱码 git status 显示中文和解决中 ...

  4. 我的Java开发学习之旅------>工具类:Java使用正则表达式分离出字符串中的中文和英文

    今天看到一个工具类使用正则表达式将一大段字符串中的中文和英文都分离出来了,在此记录一下,读者可以收藏! import java.util.ArrayList; import java.util.Col ...

  5. matplotlib 无法显示中文和负号的解决办法

    matplotlib无法显示中文和负号解决办法

  6. JS-只能输入中文和英文

    <span style="font-family:KaiTi_GB2312;">转自:<a target=_blank href="http://www ...

  7. python2.7.x的字符串编码到底什么鬼?(中文和英文的处理)

    一直以来我其实一直对python的编码弄得非常晕,能正常编码,也能处理一些情况.但是始终不明白有些问题究竟为何出,原因是什么,为什么要这样用. 今天晚上正好好好研究了一番解答了自己心中的困惑. Q:p ...

  8. 嵌入式qt显示中文和隐藏鼠标

    最近项目快接近尾声了,要把项目移植到板子上,但是板子上的系统没有安装字库,导致中文无法显示,并且有一个很讨厌的鼠标光标(又没有鼠标),上网找了一些解决方案,记录一下 qt显示中文: 如果你急于在ARM ...

  9. JS判断字符串长度的5个方法(区分中文和英文)

    目的:计算字符串长度(英文占1个字符,中文汉字占2个字符) 方法一: 代码如下: String.prototype.gblen = function() {    var len = 0;    fo ...

随机推荐

  1. ArcEngine栅格和矢量渲染(含可视化颜色带)

    使用ArcEngine9.3开发的栅格和矢量的渲染. 开发环境:ArcEngine9.3,VS2008. 功能:栅格(拉伸和分级)和矢量(简单.唯一值.分级.比例)渲染. 开发界面如图所示. 图1 主 ...

  2. C# 常用函数和方法集

    1.DateTime 数字型  System.DateTime currentTime=new System.DateTime(); 1.1 取当前年月日时分秒 currentTime=System. ...

  3. FPC Trace Pattern Layout Design Notices (軟板線路設計注意事項)

    整理了一些軟板(FPCB/Flex Cable)製造廠關於線路設計的要求 (Design Guide)以避免應用上的品質問題. 1.Relationship between Through Hole, ...

  4. transition与visibility与display

    http://www.zhangxinxu.com/wordpress/2013/05/transition-visibility-show-hide/ 术语解释是: visibility: 离散步骤 ...

  5. jquery判断移动设备代码片段;pc、iphone、安卓

    $(document).ready(function () { /* 判断设备*/ var browser={ versions:function(){ var u = navigator.userA ...

  6. http-关于application/x-www-form-urlencoded等字符编码的解释说明

    在Form元素的语法中,EncType表明提交数据的格式 用 Enctype 属性指定将数据回发到服务器时浏览器使用的编码类型. 下边是说明: application/x-www-form-urlen ...

  7. 解密javascript模块载入器require.js

    require.config require.config设置require.js模板载入选项 // 定义config req.config = function (config) { return ...

  8. 开源ceph管理平台inkscope部署手册

    一.前情提要 关于inkscope就不做过多介绍了,就是ceph的一个开源管理控制平台,跟ceph官方的calamary以及intel的VSM差不多一类,只是各自侧重点不一样. 相对而言,因为inks ...

  9. nodejs教程:安装express及配置app.js文件

    express.js是nodejs的一个MVC开发框架,并且支持jade等多种模板.下面简单来说说express的安装和app.js文件的配置,然后在今后的教程中一步一步使用express.js搭建个 ...

  10. 想买一套arduino玩玩

    对于物联网,去年才接触,认识但不熟悉.做过一个项目,买了一块树莓派,看了一段网络电视. 最近被邀分享一些关于物联网的东西,翻了些大学公开课,很系统但太偏理论和框架.听了一个TED感觉很不错,但太精简. ...