删除[String: Any]字典键的可选项



我有一个这样的字典:

[
"Optional(Optional("Optional(Optional(\"Optional(Optional(\\\"Optional(Optional(257))\\\"))\"))"))": "Seçenek 2",
"Optional(Optional("Optional(Optional(\"Optional(Optional(\\\"Optional(Optional(261))\\\"))\"))"))": "55"
]

如何删除"Optional"并使用整型值,如:

["57": "Seçenek 2", "61": "55"]

我很难回答这个问题,下面的代码将提供您的需求

var dictionary = [
"Optional(Optional("Optional(Optional(\"Optional(Optional(\\\"Optional(Optional(257))\\\"))\"))"))": "Seçenek 2",
"Optional(Optional("Optional(Optional(\"Optional(Optional(\\\"Optional(Optional(261))\\\"))\"))"))": "55"
]
for (key, value) in dictionary{
let lKey = key.replacingOccurrences(of: "Optional(", with: "").replacingOccurrences(of: """, with: "").replacingOccurrences(of: ")", with: "").replacingOccurrences(of: "\", with: "")
dictionary.removeValue(forKey: key)
dictionary[lKey] = value
}
print(dictionary)
//Output: ["261": "55", "257": "Seçenek 2"]

Suggention

我建议您在创建dictionary之前处理键值。用户if let打开密钥,然后将密钥值对添加到dictionary

最新更新