Go语言 如何将“\”替换为空字符串?

7fhtutme  于 5个月前  发布在  Go
关注(0)|答案(1)|浏览(88)

嗨,我试图从整个字符串中替换这个特定的字符,但是我得到了

missing ',' in argument list

字符串
这是我的代码,正如你所看到的,我正在使用strings.Replace函数,但看起来“/”太多了,它无法处理。

loadPAConfigurationData.Data = strings.Replace(loadPAConfigurationData.Data, "u003E", ">", -1)
loadPAConfigurationData.Data = strings.Replace(loadPAConfigurationData.Data, "u003C", "<", -1)
loadPAConfigurationData.Data = strings.Replace(loadPAConfigurationData.Data, "\r\n", "", -1)
loadPAConfigurationData.Data = strings.Replace(loadPAConfigurationData.Data, "\", "", -1)


我只在最后一行得到了错误。请帮忙吗?

qgzx9mmu

qgzx9mmu1#

声明中有电话的部分

strings.Replace(loadPAConfigurationData.Data, "\", "", -1)

字符串
解析如下。
由于\"是一个所谓的escape sequence,允许双引号字符出现在双引号字符串中,Go解析器读取第一个",它开始一个字符串,然后读取\",它被视为",然后读取,后跟一个空格,然后看到另一个",它结束了字符串字面量。此时,解析器已经收集了另一个参数,即被解析的方法调用的第二个参数。
解析器开始进一步扫描,期望看到函数调用的另一个参数,并找到另一个",而它期望找到一个),或者一个逗号(可能在它们之前有一些空格),用于分隔调用的参数。解析器停止并报告错误。
换句话说,这就是解析器所看到的:

+- expected a , or a )
                                                    |
                                                    v
strings.Replace(loadPAConfigurationData.Data, "\", "", -1)
^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
|               |                             |
|               |                             +- the second argument
|               +- the first argument
+- the method to call


至于解决问题,你可能想使用

"\\"


`\`


表示由唯一的双引号字符组成的字符串。
这在文档中有解释,但你的问题太基本了,我建议你花点时间,至少完成一些关于Go的介绍性材料。你可以从The Go Tour开始。

相关问题