数组中的地图过滤器

时间:2017-06-12 09:29:35

标签: arrays swift filter

需要过滤数组的帮助。

let array = [pair: "TZS_SFDT", pair: "TZFD_TG", pair: "G_TDDD"]

我如何在两个对象中分隔字母组,如:

arraySeperated1 = [part1: "TZS", part1:"TZFD", part1: "G"]
arraySeperated2 = [part2: "SFDT", part2: "TG", part2: "TDDD"] 

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

最好我可以处理你的非法代码(致命错误:字典文字包含重复的密钥),而不是将其视为/解释为字符串数组:

let array = ["TZS_SFDT", "TZFD_TG", "G_TDDD"]

然后分开它:

let arraySeparated1 = array.map { $0.substring(to: $0.range(of: "_")!.lowerBound) }
let arraySeparated2 = array.map { $0.substring(from: $0.range(of: "_")!.upperBound) }

好的,在评论澄清之后,你确实得到了:

let array = [[pair: "TZS_SFDT", description: "", Value: 0],
             [pair: "TZFD_TG", description: "", Value: 0],
             [pair: "G_TDDD", description: "", Value: 0]]

所以你分成:

let arraySeparated1 = array.map { ["part1":$0.pair.substring(to: $0.pair.range(of: "_")!.lowerBound)] }
let arraySeparated2 = array.map { ["part2":$0.pair.substring(from: $0.pair.range(of: "_")!.upperBound)] }