go - 转义“。” 字符串中的字符
问题描述
我试图逃避所有出现的“。” 带有反斜杠的字符串中的字符。当我运行我的 Go 代码时,它运行良好,但是当我编译并构建二进制文件然后运行它时,它又增加了一个反斜杠。
s := "strings.test"
i := strings.Replace(s, ".", "\\.", -1)
我什至试过
s := "strings.test"
i := strings.Replace(s, ".", `\.`, -1)
输出:“字符串\\.test”
预期输出:“strings\.test”
不确定运行 main.go 与构建项目然后运行它有什么区别。
解决方案
你确定你的输出吗?这个 Go Playground 给了我你想要的输出https://play.golang.org/p/fGzLeE_3h6h
编译也是如此,我得到正确的输出...您确定您的代码运行良好(具有您期望的值)吗?
go run
与 执行编译go build
后go run
的二进制文件相同,更像是一个快捷方式
推荐阅读
- java - nifi 正则表达式未能逃脱反斜杠“\”
- c# - 插入实体框架后启动应用程序出错
- cuda - cuDevicePrimaryCtxReset() 和 cudaDeviceReset() 做同样的事情吗?
- python - 在虚拟环境中使用 pip 安装 Flask-MySQLdb 时出错
- node.js - Socket.io + 节点 JS = 握手期间出错:错误代码 500
- python - 在 Django 频道中提交消息时如何显示时间戳
- testing - TestCafe 开源可以运行TestCafe studio 中编写的测试用例吗?
- sql - 必须声明标量变量 - 即使定义了该变量(Q&A)
- javascript - 如何在 React 中使用 JavaScript 从数组中删除对象元素
- docker - 在 Windows 10 上的 docker 中运行具有多个节点的 couchbase 集群