Angenommen, ich möchte eine Zeichenfolge durch ein leeres Leerzeichen teilen. Dieses Code-Snippet funktioniert in Swift 1.x einwandfrei. Es funktioniert nicht in Swift 2 in Xcode 7 Beta 1.
var str = "Hello Bob"
var foo = split(str) {$0 == " "}
Ich erhalte den folgenden Compilerfehler:
Cannot invoke 'split' with an argument list of type '(String, (_) -> _)
Weiß jemand, wie man das richtig nennt?
Aktualisiert : Es wurde ein Hinweis hinzugefügt, dass dies für den Xcode 7 Beta 1 war.
Sliceable
.import Foundation
, nein?" "
. Ich bin mir nicht sicher, ob ich den Rest verstehe. Sie versuchen also, einen String- Konstruktor zu verwenden, um ihn in einen lesbaren String / Human-Wert zu konvertieren? Was ist mit deminit
? sollte es nicht stattdessen so etwas seinString($0)
?Swift 4
let str = "Hello Bob" let strSplitArray = str.split(separator: " ") strSplitArray.first! // "Hello" strSplitArray.last! // "Bob"
Xcode 7.1.1 mit Swift 2.1
let str = "Hello Bob" let strSplit = str.characters.split(" ") String(strSplit.first!) String(strSplit.last!)
quelle
In Swift 3
componentsSeparatedByString
undsplit
wird auf diese Weise verwendet.let splitArray = "Hello World".components(separatedBy: " ") // ["Hello", "World"]
Teilt
let splitArray = "Hello World".characters.split(separator: " ").map(String.init) // ["Hello", "World"]
quelle