我不知道如何通过查看所有大写字母来分隔单词并将它们分配到数组中。
var myString2 : String = "Cities of Illinois are CHICAGO PEORIA ROCKFORD"
期望的输出
提前致谢
也许你可以使用正则表达式来实现你想要的。
var myString2 : String = "Cities of Illinois are CHICAGO PEORIA ROCKFORD"
let pattern = "\\b[A-Z]+\\b"
let regex = try! NSRegularExpression(pattern: pattern)
let matches = regex.matches(in: myString2, range: NSRange(0..<myString2.utf16.count))
let myArray = matches.map {String(myString2[Range($0.range, in: myString2)!])}
print(myArray) //->["CHICAGO", "PEORIA", "ROCKFORD"]
您可以使用以下行来获取所需的数组:
let array = myString2.components(separatedBy: " ").filter({ $0.compare($0.uppercased()) == .orderedSame })
脚步:
let arr = myString2.components(separatedBy: " ")
let filteredArray = arr.filter({ $0.compare($0.uppercased()) == .orderedSame })