Objective-C – 用一个空格替换换行序列

标签 objective-c replace nsstring newline

如何用一个空格替换换行符 (\n) 序列。

即用户输入了一个双换行符(“\n\n”),我希望将其替换为一个空格(“”)。或者用户输入了三个换行符(“\n\n\n”),我希望将其替换为一个空格(“”)。

最佳答案

试试这个:

NSArray *split = [orig componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]];
split = [split filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"length > 0"]];
NSString *res = [split componentsJoinedByString:@" "];

它是这样工作的:

  • 第一行按换行符分割
  • 第二行删除为一行中的多个分隔符插入的空项
  • 第三行使用一个空格作为新的分隔符将字符串连接回去

关于Objective-C – 用一个空格替换换行序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11360905/

相关文章:

ios - 如何防止 iOS 将 ascii 转换为表情符号?

ios - 检测 NSString 是否为 Base64

objective-c - 自动释放或不自动释放

ios - 创建可点击的 CGPath

javascript - 如何使用 Regex 将两个双引号替换为一个双引号而不捕获一个双引号的出现?

excel - VBA - 根据条件更改单元格的值

jquery - 使用 jquery 删除标签内字符串的一部分?

objective-c - 什么会导致 objectForKey : to return null with a valid string in place?

ios - 在 iOS 上,如果没有 Apple Watch,如何收集锻炼时消耗的总能量?

iphone - 如果应用程序未通过点击 'View' 按钮启动,则检索最新的推送通知