如何解析swift字符串以获取数据

时间:2015-12-29 22:36:34

标签: ios string

我使用Factual API获取有关商家的信息。对于工作时间,我得到一个字符串:

"{\"monday\":[[\"11:00\",\"23:59\"]],\"friday\":[[\"11:00\",\"23:59\"]],\"sunday\":[[\"00:00\",\"1:00\"],[\"10:00\",\"23:59\"]],\"tuesday\":[[\"11:00\",\"23:59\"]],\"thursday\":[[\"11:00\",\"23:59\"]],\"saturday\":[[\"00:00\",\"1:00\"],[\"10:00\",\"23:59\"]],\"wednesday\":[[\"11:00\",\"23:59\"]]}"

我已经尝试了几件事来打破这个局面,而且我正在敲打我的脑袋。任何想法我如何解析这个字符串,以便能够白天获得开放/关闭时间,以确定一个地方目前是否开放?非常感谢提前!!

1 个答案:

答案 0 :(得分:1)

您可以将字符串转换为NSData,然后转换为Dictionary

let string = "{\"monday\":[[\"11:00\",\"23:59\"]],\"friday\":[[\"11:00\",\"23:59\"]],\"sunday\":[[\"00:00\",\"1:00\"],[\"10:00\",\"23:59\"]],\"tuesday\":[[\"11:00\",\"23:59\"]],\"thursday\":[[\"11:00\",\"23:59\"]],\"saturday\":[[\"00:00\",\"1:00\"],[\"10:00\",\"23:59\"]],\"wednesday\":[[\"11:00\",\"23:59\"]]}"

let data = string.dataUsingEncoding(NSUTF8StringEncoding)!
let dictionary = try! NSJSONSerialization.JSONObjectWithData(data, options: []) as! [String : AnyObject]

print(dictionary["monday"]![0][0]) //11:00
print(dictionary["monday"]![0][1]) //23:59

当然,首先将它作为字典更容易。