ios - 如何从 NSMutableAttributedString 中删除文本

标签 ios objective-c nsmutableattributedstring

我需要从 NSMutableAttributedString 中删除一些文本。

我的代码是这样的:

[attributedLabel setText:string afterInheritingLabelAttributesAndConfiguringWithBlock:^NSMutableAttributedString *(NSMutableAttributedString *mutableAttributedString)
    {
        NSRange stringRange = NSMakeRange(0, [mutableAttributedString length]);
        NSRegularExpression *regexp = ParenthesisRegularExpression();
        UIFont *italicSystemFont = [UIFont italicSystemFontOfSize:Size];
        DLog(@"%@",italicSystemFont.fontName);
        CTFontRef italicFont = CTFontCreateWithName((__bridge CFStringRef)italicSystemFont.fontName, italicSystemFont.pointSize, NULL);
        [regexp enumerateMatchesInString:[mutableAttributedString string] options:0 range:stringRange usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
            if (italicFont) {
                [mutableAttributedString removeAttribute:(NSString *)kCTFontAttributeName range:result.range];
                [mutableAttributedString addAttribute:(NSString *)kCTFontAttributeName value:(__bridge id)italicFont range:result.range];
                CFRelease(italicFont);
            }
        }];

        return mutableAttributedString;
    }];

我想从这个 mutableAttributedString 中删除括号。

试过这个:

[[attributedLabel.attributedText stringByReplacingOccurrencesOfString:@"(" withString:@""] stringByReplacingOccurrencesOfString:@")" withString:@""];

但是有

no visible interface in NSAttributedString for stringByReplacingOccurrencesOfString.

如何从 NSMutableAttributedString 中删除文本?

最佳答案

为什么你甚至假设 NSMutableAttributedString 响应 NSMutableString 响应的消息?他们不相互继承。相反,您应该阅读 documentation并使用 mutableString 方法获取要操作的可变字符串实例。

关于ios - 如何从 NSMutableAttributedString 中删除文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16799510/

相关文章:

ios - 从 NSString 转换为 Swift String 时文本被截断

ios - 更改 NSMutableAttributedString 中链接的颜色

swift - NSAttributedString 在 iOS 13 中未按预期工作

ios - 我可以使用 PushKit 进行定期推送而不使用 VoIP 吗?如果用户不根据通知采取行动,是否会允许在后台启动已终止的应用程序?

iphone - 如何在iPhone应用程序中通过修改图像的像素值来为UIImage添加色调效果

iphone - UITableViewCell 平移以显示选项 : Animated

ios - 编辑属性字符串时会调用哪种替换方法?

ios - iPhone 有帧率限制吗?

ios - 手动管理 faSTLane 匹配 Repo

ios - 多个 iOS GET 请求(动态请求数)