【问题标题】:Removing ''\" from output从输出中删除 ''\"
【发布时间】:2019-10-07 08:26:28
【问题描述】:

我正在尝试从输出中删除反斜杠,replacingOccurrences 不起作用。我想制作[String:String] 类型的字典,其中第二个字符串包含一个数组,并且该数组包含其中的字符串,即deviceID

            let deviceIdArray = [membrs.deviceID!]
            //  str = str.replacingOccurrences(of: "\\", with: "") this is not working
            var deviceIdDict: [String:String] = [:]
            deviceIdDict = ["userData": "\(deviceIdArray)"]
            print("my dictionary: \(deviceIdDict)")

输出:

my dictionary: ["userData": "[\"CEA2CE6B-EE43-43B6-A04D-5D11BD65A762\"]"]

【问题讨论】:

  • 这是一个指定的转义字符,仅当您打印出该值时才会出现在控制台上 - 没有什么可以摆脱的。
  • 反斜杠在技术上并不存在,它正在转义字符串中的第二组双引号。例如,如果将此字符串分配给标签,则不会看到反斜杠
  • 您可以尝试将文本设置为标签或文本视图,以查看打印内容与实际文本之间的差异。

标签: ios swift


【解决方案1】:

使用debugDescription

let dictString = deviceIdDict.debugDescription
    print(dictString)

它会打印出来

["some": "more"]

你可以试试dump

print("my dictionary: ")
dump(deviceIdDict)

会这样打印:

▿ 1 key/value pair
  ▿ (2 elements)
    - key: "some"
    - value: "more"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-04
    • 2013-08-02
    • 2013-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多