gpt4 book ai didi

arrays - 如何通过特定字符分隔 Swift 3 中的字符串

转载 作者:搜寻专家 更新时间:2023-11-01 07:13:49 24 4
gpt4 key购买 nike

我正在使用 Swift 3,并且有一个包含 0 和 1 的长字符串。前任。 "1111001111111111001111111111000111000000000111000111111111100000000111100111100111111111100000000011100011111111110011110011110000000000000000000"

我试图将这个字符串分成两个数组,以确定有多少个 1 和 0 在另一个数组中重复。

当我调用方法时 let oneArray = binString.components(separatedBy: "0")let zeroArray = binString.components(separatedBy: "1")我们为示例字符串获得的返回数组是:

["1111", "", "1111111111", "", "1111111111", "", "", "111", "", "", "", "", "", "", "", "", "111", "", "", "1111111111", "", "", "", "", "", "", "", "1111", "", "1111", "", "1111111111", "", "", "", "", "", "", "", "", "111", "", "", "1111111111", "", "1111", "", "1111", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""]

["", "", "", "", "00", "", "", "", "", "", "", "", "", "", "00", "", "", "", "", "", "", "", "", "", "000", "", "", "000000000", "", "", "000", "", "", "", "", "", "", "", "", "", "00000000", "", "", "", "00", "", "", "", "00", "", "", "", "", "", "", "", "", "", "000000000", "", "", "000", "", "", "", "", "", "", "", "", "", "00", "", "", "", "00", "", "", "", "0000000000000000000"]

而且我们不明白为什么我们不能只返回仅包含 0 和 1 而不是空字符串作为数组元素的数组。之前似乎没有其他人问过这种问题,我们很困惑,因为这似乎是用于从字符分隔字符串的一般方法。

我想知道如何按照我们想要的方式分隔这些字符串。这里的情况似乎很奇怪

最佳答案

每次出现分隔符字符串都会将原始字符串拆分为一个新字符串,因此连续出现会导致空字符串。

你离你想要的很近。只需将 filter { !$0.isEmpty } 语句添加到每行的末尾即可删除不需要的空字符串:

let binString = "1111001111111111001111111111000111000000000111000111111111100000000111100111100111111111100000000011100011111111110011110011110000000000000000000"

let oneArray = binString.components(separatedBy: "0").filter { !$0.isEmpty }
let zeroArray = binString.components(separatedBy: "1").filter { !$0.isEmpty }

print(oneArray)
print(zeroArray)

输出:

["1111", "1111111111", "1111111111", "111", "111", "1111111111", "1111", "1111", "1111111111", "111", "1111111111", "1111", "1111"]
["00", "00", "000", "000000000", "000", "00000000", "00", "00", "000000000", "000", "00", "00", "0000000000000000000"]

关于arrays - 如何通过特定字符分隔 Swift 3 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43420964/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com