Trying to get substring of String and append it to array of Strings:
var stringToSplit = "TEST TEXT" var s = [String]() let subStr = anotherString[0 ..< 6] s.append(subStr) // <---- HERE I GET THE ERROR As @Leo Dabus mentioned, you need to initialize a new String with your substring:
Change:
s.append(subStr) To:
s.append(String(subStr)) my two cents for serro in different context. I was trying to get an array of "String" splitting a string. "split" gives back "Substring", for efficiency reason (as per Swift.org litre).
So I ended up doing:
let buffer = "one,two,three" let rows = buffer.split(separator:",") let realStrings = rows.map { subString -> String in return String(subString) } print(realStrings) Ape can help someone else.
s.append(String(subStr))