• 正则表达式的使用 选取有用数据


     //话题  ##

        NSMutableAttributedString * contentStr = [[NSMutableAttributedString alloc] initWithString:Content];

        NSError *error = NULL;

        NSRegularExpression *topicRegex = [NSRegularExpression regularExpressionWithPattern:@"#[^#]+#" options:NSRegularExpressionCaseInsensitive error:&error];

    //找到第一个符合条件的数据

        NSTextCheckingResult *result = [topicRegex firstMatchInString:bm.Content options:0 range:NSMakeRange(0, [bm.Content length])];

        if(result)

        {

            [contentStr addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:result.range];

            [contentStr addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle]  range:result.range];

            [contentStr endEditing];

        }

         //链接

        NSRegularExpression *linkRegex = [NSRegularExpression regularExpressionWithPattern:@"链接的正则表达式" options:NSRegularExpressionCaseInsensitive error:&error];

    //找到多个符合条件的数据

        NSArray *linkArr = [linkRegex matchesInString:bm.Content options:0 range:NSMakeRange(0, [bm.Content length])];

        NSMutableAttributedString * contentStr = [[NSMutableAttributedString alloc] initWithString:Content];

        if ([linkArr count] != 0) {

            for (NSTextCheckingResult *linkResult in linkArr) {

                NSLog(@"%@ ", [Content substringWithRange:result.range]);

            }

        }

  • 相关阅读:
    改写promise并添加超时处理
    js将文案复制到剪贴板
    学习笔记(安装、命名实体识别、BERT、面试)
    读书笔记——安装
    Markdown使用
    奔波三载,虽死犹生
    .net工程师的利器
    .NET开发相关技术
    两行代码教你用React useContext代替React-redux
    记解决 `antd is not defined` 解决ant design 打包体积过大的问题
  • 原文地址:https://www.cnblogs.com/qiutangfengmian/p/4962226.html
Copyright © 2020-2023  润新知