Swift版本的ComponentsSeparatedByString

我知道它的菜鸟问题,我真的在询问之前四处搜寻。但是我想知道的事情并没有确切的答案。我们如何不使用目标C将字符串拆分为数组?例如:

var str = "Today is so hot"

var arr = str.componentsSeparatedByString(" ") // *

  • 我知道它不起作用,但是我正在寻找那样的东西。我想用“”分割字符串(或其他字符/字符串)

想法:对我来说可能很好,扩展了字符串类。但是我不知道我该怎么做。

编辑:忘记导入基础。如果我导入基础,它将起作用。但是与扩展String类有什么关系吗?谢谢

回答:

如果要按给定 字符 分割字符串,则可以使用内置split()方法,而无需Foundation:

let str = "Today is so hot"

let arr = split(str, { $0 == " "}, maxSplit: Int.max, allowEmptySlices: false)

println(arr) // [Today, is, so, hot]

使用Swift 1.2(Xcode 6.3)更改了参数的顺序,比较[拆分现在抱怨缺少“

isSeparator”]

let str = "Today is so hot"

let arr = split(str, maxSplit: Int.max, allowEmptySlices: false, isSeparator: { $0 == " "} )

println(arr) // [Today, is, so, hot]

let str = "Today is so hot"

let arr = str.characters.split(separator: " ").map(String.init)

print(arr)

以上是 Swift版本的ComponentsSeparatedByString 的全部内容, 来源链接: utcz.com/qa/400991.html

回到顶部