这就是我从头顶上想出来的。我敢打赌,有一个更好的方式来做这件事,所以我鼓励你继续尝试。
func splitedString(string: String, length: Int) -> [String] {
var groups = [String]()
var currentGroup = ""
for index in string.startIndex..<string.endIndex {
currentGroup.append(string[index])
if currentGroup.characters.count == 3 {
groups.append(currentGroup)
currentGroup = ""
}
}
if currentGroup.characters.count > 0 {
groups.append(currentGroup)
}
return groups
}
这里是我的测试
let firstString = "123456789"
let groups = splitedString(firstString, length: 3)
// Returned ["123", "456", "789"]
let secondString = "1234567"
let moreGroups = splitedString(secondString, length: 3)
// Returned ["123", "456", "7"]
的目标是什么和什么样的约束?您是否尝试对数字表示进行格式化,例如:“10000”会变成“10 000”? – Moritz
@EricD。不,'NSNumberFormatter'不是我的情况。我只想知道,我可以通过split()函数或其他一些不错的解决方案来实现这个功能。 – katleta3000
请注意完全相同(因为* last * chunk被截断,而不是您的示例中的第一个),但可能将服务器作为起点:stackoverflow.com/a/28560013/1187415。 –