Go 转义'';字符串中的字符

Go 转义'';字符串中的字符,go,Go,我正在尝试用反斜杠转义字符串中出现的所有“.”字符。当我运行Go代码时,它工作正常,但当我编译并构建二进制文件,然后运行它时,它又添加了一个反斜杠 s := "strings.test" i := strings.Replace(s, ".", "\\.", -1) 我甚至试过 s := "strings.test" i := strings.Replace(s, ".", `\.`, -1) 输出:“字符串\\.test” 预期输出:“字符串\.test” 不确定运行main.go与构建项

我正在尝试用反斜杠转义字符串中出现的所有“.”字符。当我运行Go代码时,它工作正常,但当我编译并构建二进制文件,然后运行它时,它又添加了一个反斜杠

s := "strings.test"
i := strings.Replace(s, ".", "\\.", -1)
我甚至试过

s := "strings.test"
i := strings.Replace(s, ".", `\.`, -1)
输出:“字符串\\.test”

预期输出:“字符串\.test”


不确定运行main.go与构建项目然后运行它之间有什么区别。

您确定您的输出吗?这个围棋场给了我你想要的结果

编译也是如此,我得到了正确的输出。。。您确定您的代码运行良好(具有您期望的值)吗


go-run
的作用与
go-build
相同,但是
go-run
为您执行编译后的二进制文件,更像是一个快捷方式

输出应该是相同的,并且对于构建和运行文件都是相同的。。您所说的输出应该是在您选择新字符串作为
\\\\\\\\\\\\\\\\\\时。
,这就是奇怪的地方。有一件事,我在mac上运行,但构建和测试是在RHEL服务器上运行的。这个问题可能是因为操作系统吗?