如何将字符串中多次出现的 \r
&\n
替换为一个?
如果样本字符串是
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec blandit magna et quam maximus elementum et id ex.\r\n Donec luctus massa ut sapien consectetur blandit。 Maecenas vehicula ex odio,eu sollicitudin felis vehicula sed。\nPhasellus hendrerit neque volutpat urna fermentum, eget cursus erat finibus。\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
不应删除单个或两个实例。
试过这个 code :
let regex = try! NSRegularExpression(pattern: "[\r\n]+", options: NSRegularExpression.Options.caseInsensitive)
let range = NSMakeRange(0, sampleString.count)
let modString = regex.stringByReplacingMatches(in: sampleString, options: [], range: range, withTemplate: "")
最佳答案
为了只删除三个到更多的匹配项,您应该将匹配模式从 [\r\n]+
更改为至 (\r\n){3,}
.
所以上面的代码应该变成
let regex = try! NSRegularExpression(pattern: "(\r\n){3,}", options: NSRegularExpression.Options.caseInsensitive)
let range = NSMakeRange(0, sampleString.count)
let modString = regex.stringByReplacingMatches(in: sampleString, options: [], range: range, withTemplate: "")
关于ios - 删除两个或多个 '\r' '\n' 的出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52128237/