大家好我有一个我需要解决的问题。以下是示例:
输入ABCD12345
将输出ABCD 12345
输入A12345BCDE
将输出A 12345 BCDE
输入ABC 12345
将输出ABC 12345
(删除多余的间距)
如上所示,如果没有间距,则应添加单个间距,但如果有,则检查是否有双重间隔,然后将其设为单个间距。
答案 0 :(得分:2)
要完成你的要求你可以做这样的事情:
let letters = NSCharacterSet.letterCharacterSet()
let digits = NSCharacterSet.decimalDigitCharacterSet()
var res = ""
var lastDigit = false
for char in [input].unicodeScalars {
if letters.longCharacterIsMember(char.value) && lastDigit {
res += " "
lastDigit = false
} else if digits.longCharacterIsMember(char.value) && !lastDigit {
res += " "
lastDigit = true
}
if String(char) != " " {
res += String(char)
}
}
print(res)
在上面的代码中,您应该将[input]
占位符替换为您要处理的输入,结果字符串将位于res
变量中。