ios - 在 NSString 中搜索方括号

标签 ios objective-c

我将一些文本加载到 NSString 对象中,其中包含方括号中的注释 - 我需要删除方括号及其中的所有内容,以便用户只看到正文。

但是,由于 Objective-C 依赖方括号进行消息传递等...,我在删除它们时遇到了一些问题。

使用方括号是否有一些特殊的转义字符(例如作为“rangeOfString:”的参数)? Xcode 反复告诉我没有。

干杯

最佳答案

您可以使用正则表达式删除所需的子字符串:

NSString *s = @"hi[bla]tototo[lalA123]a";
NSString *result = [s stringByReplacingOccurrencesOfString:@"\\[[\\w]+\\]" 
                                                withString:@""
                                                   options:NSRegularExpressionSearch|NSCaseInsensitiveSearch
                                                     range:NSMakeRange(0, [s length])];
NSLog(@"%@", result);
// output "hitototoa"

附注如果您的注释可能包含与“\w”说明符不匹配的字符,您可能需要调整正则表达式模式

关于ios - 在 NSString 中搜索方括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6973886/

相关文章:

ios - 在被 Apple 拒绝后,我们可以将二进制文件上传多少次到 iTunes Connect?

iphone - 从 webview 返回后自动旋转屏幕错误

ios - 如何使 Parse Installation 对象的属性成为指向 User 对象的指针?

ios - 有效地搜索集合中的 NSString

objective-c - 在插入符号位置将文本插入 UITextField

ios - 使用 PureLayout 自定义 UIButton

ios - 使用 AVAssetWriter 将 UIImages 转为视频会产生 < 800 张图像的黑帧闪烁

ios - 如何快速以全屏模式打开 VLC

android - 使用 Flip_card flutter 单击按钮时翻转所有卡片

iOS - 在后台应用程序时在 UI 顶部显示一致的警报(就像个人热点一样)