嗨,我试图从 go 中的整个字符串中替换这个特定字符,但我明白了
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)
我只在最后一行收到错误。请问有什么帮助吗?
调用语句的部分
strings.Replace(loadPAConfigurationData.Data, "\", "", -1)
解析如下。
由于
\"
是一个所谓的转义序列,允许双引号字符出现在双引号字符串文字中,因此 Go 解析器读取第一个开始字符串文字的 "
,然后读取 \"
,其中被视为 "
,然后它读取 ,
后跟一个空格,然后看到另一个结束字符串文字的 "
。
解析器开始进一步扫描,期望看到函数调用的另一个参数,并找到另一个
"
,同时它期望找到 )
或分隔调用参数的逗号。解析器停止并报告错误。
换句话说,这就是解析器所看到的:
+- expected a , or a )
|
v
strings.Replace(loadPAConfigurationData.Data, "\", "", -1)
^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^
| | |
| | +- the second argument
| +- the first argument
+- the method to call
至于解决问题,你可能想使用
"\\"
或
`\`
表示由单个双引号字符组成的字符串。
这在 文档 中有解释,但你的问题太基本了,我建议花点时间至少完成一些关于 Go 的介绍性材料。您可以从Go Tour开始。