- (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. QWebView 显示本地HTML 文件

    QWebView 显示本地HTML文件的时候,如果直接使用 webView->load(QUrl(QString("file:///c:\\a.html")); 可能会导致a ...

  2. 使用TWebBrowser组件保存网页为html和mht文件 收藏

    一.保存为HTML文件 uses ActiveX;...procedure WB_SaveAs_HTML(WB : TWebBrowser; const FileName : string) ;var ...

  3. javascript函数的基础功能

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. poj2656---求一列数中最大数的序数而且在前面输入的更优先

    #include<stdio.h> #include<stdlib.h> int main() { int n,i; while(scanf("%d",&a ...

  5. Trunk Club:颠覆男士时装零售的创业公司_第1页_福布斯中文网

    Trunk Club:颠覆男士时装零售的创业公司_第1页_福布斯中文网 Trunk Club:颠覆男士时装零售的创业公司

  6. Android 常用开发类库

    android.app :提供高层的程序模型.提供基本的运行环境    android.content :包含各种的对设备上的数据进行访问和发布的类    android.database :通过内容 ...

  7. 对XXX(数字)安全卫士实在是忍无可忍了,为什么一定要像日本鬼子强奸妇女一样强奸我们这些弱小者

    一直一来对XXX(数字)安全卫士非常痛恨,无耻,恶心,没有底线,还有对待我们这些弱小者,就像当年日本鬼子强奸妇女一样,血粼粼的虐杀我们这些弱小者,无法反抗,又必须接受. 你强制杀掉别人的ADB 就算了 ...

  8. 读写分离提高 SQL Server 并发性

    转自:http://www.canway.net/Lists/CanwayOriginalArticels/DispForm.aspx?ID=476 在一些大型的网站或者应用中,单台的SQL Serv ...

  9. Div实现滚动条效果

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. R与数据分析旧笔记(六)多元线性分析 上

    > x=iris[which(iris$Species=="setosa"),1:4] > plot(x) 首先是简单的肉眼观察数据之间相关性 多元回归相较于一元回归的 ...