📜  在 Swift 中将字符串拆分为数组(1)

📅  最后修改于: 2023-12-03 15:37:32.031000             🧑  作者: Mango

在 Swift 中将字符串拆分为数组

在 Swift 中,字符串可以通过调用components(separatedBy:)方法来拆分为数组。该方法接受一个分隔符作为参数,并返回一个新的数组,其中包含被分隔符分隔的字符串的子字符串。

以下是一个使用components(separatedBy:)方法的示例代码:

let str = "Hello, world!"
let arr = str.components(separatedBy: ", ")
print(arr) // ["Hello", "world!"]

在上面的示例中,我们首先定义了一个包含逗号和空格的字符串。然后,我们使用components(separatedBy:)方法来将其拆分为一个字符串数组,并打印该数组。输出结果为["Hello", "world!"]

该方法还可以接受多个分隔符作为参数,并将其用于将字符串拆分为数组。以下是一个使用多个分隔符的示例:

let str = "Red,Green;Blue.Yellow"
let separators = CharacterSet(charactersIn: ",;")
let arr = str.components(separatedBy: separators)
print(arr) // ["Red", "Green", "Blue", "Yellow"]

在上面的示例中,我们首先定义了一个包含逗号、分号和点的字符串。然后,我们使用CharacterSetcomponents(separatedBy:)方法来将其拆分为一个字符串数组。输出结果为["Red", "Green", "Blue", "Yellow"]

如果您要将特定字符拆分为数组,并确保在数组中没有空字符串,则可以通过添加filter方法来完成。以下是一个具有过滤器的示例:

let str = "A,B,,C,,,D"
let arr = str.components(separatedBy: ",")
                  .filter { !$0.isEmpty }
print(arr) // ["A", "B", "C", "D"]

在上面的示例中,我们首先定义了一个包含多个逗号的字符串。然后,我们使用components(separatedBy:)方法将其拆分为一个字符串数组,并使用filter方法删除所有空字符串。输出结果为["A", "B", "C", "D"]

以上是在 Swift 中将字符串拆分为数组的示例。components(separatedBy:)方法是一个强大的字符串处理工具,可以方便地将字符串分隔为子字符串数组。