我有一个 NSString
,它可以在字符串之间有多个\n。我需要用单个\n 替换多次出现的\n。
我试过这段代码:
newString = [string stringByReplacingOccurrencesOfString:@"\n\n" withString:@"\n"];
但是如果在字符串中遇到一系列“\n\n\n\n\n\n”,这不会给出预期的结果。在这种情况下,它们将被替换为“\n\n\n”。
我应该怎么做才能将所有多个“\n”替换为单个“\n”?
感谢大家!
更新:为 UITextView
添加屏幕截图,过滤后的字符串设置为文本。按照 Attila H 在回答中的建议编写代码后,新行似乎不止一行。
最佳答案
您可能会使用 NSRegularExpression .这是最简单优雅的方式:
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"\n+" options:0 error:NULL];
NSString *newString = [regex stringByReplacingMatchesInString:string options:0 range:NSMakeRange(0, [string length]) withTemplate:@"\n"];
关于iphone - NSString 用单个换行符替换重复的换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15876053/