Ios 如何在swift中从字符串数组中拆分字符串

Ios 如何在swift中从字符串数组中拆分字符串,ios,arrays,swift,string,split,Ios,Arrays,Swift,String,Split,我有一个数组像: dateTime = ["2018/06/25 05:32:30","2018/05/25 02:37","2018/04/25 05:32:50","2018/07/25 06:30:30"] 需要拆分字符串并获得如下响应: time = ["05:32:30","02:37","05:32:50","06:30:30"] 任何人都可以在这方面提供帮助。使用下面的解决方案从所有元素获取时间 let dateTime = ["2018/06/25 05:32:30","20

我有一个
数组
像:

dateTime = ["2018/06/25 05:32:30","2018/05/25 02:37","2018/04/25 05:32:50","2018/07/25 06:30:30"]
需要拆分字符串并获得如下响应:

time = ["05:32:30","02:37","05:32:50","06:30:30"]

任何人都可以在这方面提供帮助。

使用下面的解决方案从所有元素获取时间

let dateTime = ["2018/06/25 05:32:30","2018/05/25 02:37","2018/04/25 05:32:50","2018/07/25 06:30:30"]  
let array = dateTime.map { $0.components(separatedBy: " ")[1] }
 //["05:32:30", "02:37", "05:32:50", "06:30:30"]

您可以使用
flatMap

let dates = ["2018/06/25 05:32:30","2018/05/25 02:37","2018/04/25 05:32:50","2018/07/25 06:30:30"]
let times = dates.flatMap({ $0.split(separator: " ").last ?? nil })
print(times)
// prints: ["05:32:30", "02:37", "05:32:50", "06:30:30"]

循环每个项目并使用拆分函数

let times = dateTime.compactMap { $0.split(separator: " ").last }

需要注意的是,如果未找到第二个元素,则使用下标
[1]
可能会导致空指针。这就是为什么
flatMap
更好的原因。请检查我的答案。你能告诉我为什么你把我的答案改成不被接受吗?