Swift String to Array

Phi*_*son 0 swift

我在Swift中有一个字符串,如下所示:

["174580798","151240033","69753978","122754394","72373738","183135789","178841809","84104360","122823486","184553211","182415131","70707972"]
Run Code Online (Sandbox Code Playgroud)

我需要将它转换为NSArray.

我已经查看了SO上的其他方法,但它将每个字符分成单独的数组元素,而不是打破逗号.请参阅:将Swift字符串转换为数组

我已经尝试使用map()函数,我也尝试了各种类型的转换,但似乎没有任何东西接近.

提前致谢.

vad*_*ian 5

它可能是一个JSON字符串,所以你可以尝试这个

let string = "[\"174580798\",\"151240033\",\"69753978\",\"122754394\",\"72373738\",\"183135789\",\"178841809\",\"84104360\",\"122823486\",\"184553211\",\"182415131\",\"70707972\"]"
let data = string.dataUsingEncoding(NSUTF8StringEncoding)!
let jsonArray = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions(), error: nil) as! [String]
Run Code Online (Sandbox Code Playgroud)

因为类型[String]是不同的,你可以强迫它

Swift 3+:

let data = Data(string.utf8)
let jsonArray = try! JSONSerialization.jsonObject(with: data) as! [String]
Run Code Online (Sandbox Code Playgroud)

  • 这应该是公认的答案.原始字符串显然是JSON,这就是你解析JSON的方式. (2认同)