我知道它的noob问题,我真的在搜索之前搜索.但对于我想知道的内容并没有确切的答案.
我们如何在不使用Objective C的情况下将字符串拆分为数组?例如:
我们如何在不使用Objective C的情况下将字符串拆分为数组?例如:
var str = "Today is so hot" var arr = str.componentsSeparatedByString(" ") // *
>我知道它不起作用,但我正在寻找那样的.我想用“”(或另一个字符串/字符串)拆分字符串
想法:对我来说可能非常好,扩展了字符串类.但我不知道我是怎么做到的.
编辑:忘记导入基础.如果我导入基础它将工作.但是有没有办法扩展String类?
谢谢
解决方法
如果要按给定字符拆分字符串,则可以使用
内置split()方法,无需基础:
内置split()方法,无需基础:
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的更新:使用Swift 1.2(Xcode 6.3)更改参数的顺序,比较split now complains about missing “isSeparator”:
let str = "Today is so hot" let arr = split(str,allowEmptySlices: false,isSeparator: { $0 == " "} ) println(arr) // [Today,hot]
Swift 2的更新:见Stuart’s answer.
Swift 3更新:
let str = "Today is so hot" let arr = str.characters.split(separator: " ").map(String.init) print(arr)