在Swift 5中删除转义符“ \”

时间:2019-10-15 15:34:08

标签: swift xml

我正在尝试使用Alamofire 5 multipartFormData上传xml文件。对于数据部分,它必须为String,当我将xml文件设置为String时,它包含转义字符。我尝试了replacingOccurrences(of: "\"", with: ""),但它删除了xml中的所有字符串。如果我尝试了replacingOccurrences(of: "\", with: ""),它将, with: "")转换为String。有没有办法删除反斜杠?谢谢。

**请不要标记为重复,因为我尝试了所有答案,但不适用于我的情况**

这是示例xml

<code displayName="Vital signs" codeSystemName="LOINC" code="8716-3" codeSystem="12345"></code>
<title>Vital Signs</title>
<text>Measurement period:null-null

    <table>
        <thead>
            <tr>
                <th>Measurement</th>
                <th>Date/Time</th>
                <th>Value</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>Mean artillery pressure</td>
                <td>2019-10-15/12:11</td>
                <td>8</td>
            </tr>
        </tbody>
    </table>
</text>
<entry typeCode="DRIV">

before

尝试xml.replacingOccurrences(of: "\"", with: "")之后 it remove "" in xml

1 个答案:

答案 0 :(得分:0)

从评论中:

  

@CRD我在调试控制台中安装了po,然后将其复制并粘贴到一个空文件中。如您在图像中看到的,其中有\“。我尝试手动将其删除为空文件,然后使用邮递员上传到可以正常工作的服务器。但是我无法在Xcode中做到这一点。

看起来您的字符串中没有任何反斜杠。简单代码:

func applicationDidFinishLaunching(_ aNotification: Notification)
{
   let withQuotes = "A \"quoted\" word"
   print("withQuotes |\(withQuotes)|")
}

在最后的花括号上放置断点并运行:

withQuotes |A "quoted" word|
(lldb) po withQuotes
"A \"quoted\" word"

“ po”将字符串的值显示为文字形式-用引号引起来并带有转义符,但是字符串 value 不包含那些引号或转义符。

要在记录中删除字符串值中的反斜杠,可以使用:

.replacingOccurrences(of: "\\", with: "")

在字符串文字或变量上调用。

HTH