我想计算swift中的字符数。我正在使用此代码
let charsNumber = str.characters.count
它返回字符和返回的数量。有什么办法可以仅计算字符而没有返回?
您可以使用filter(isIncludedIn:)
从序列中排除某些内容:
let str = "abcndefnghi"
let charsNumber = str.characters.filter {$0 != "n" && $0 != "r"}.count
print(charsNumber) //-> 9
如果str
很大,则可能会更有效:
let charsNumber = str.characters.lazy.filter {$0 != "n" && $0 != "r"}.count
您可以使用:
str.replacingOccurrences(of: "n", with: "", options: String.CompareOptions(rawValue: 0), range: nil).characters.count
您还可以使用字符串方法Enumeratelines总结字符串线的字符计数如下:
let str = "abcnabcnabcn"
var charsNumber = 0
str.enumerateLines { line, _ in charsNumber += line.characters.count }
print(charsNumber) // 9