这是我使用 golang 的第二天,我可能会问一个非常基本的问题:我想替换字符串的一部分,这就是strings.Replace的好处:func Replace(s, old, new string, n int) string最后一个参数是old被替换的次数new- 从字符串的开头开始。有没有类似的标准函数从末尾开始?
1 回答
跃然一笑
TA贡献1826条经验 获得超6个赞
没有您要寻找的标准功能。
替代方案#1:反向
使用字符串反转函数(取自此处):
func Rev(s string) string {
runes := []rune(s)
for i, j := 0, len(runes)-1; i < j; i, j = i+1, j-1 {
runes[i], runes[j] = runes[j], runes[i]
}
return string(runes)
}
您的解决方案是:
Rev(strings.Replace(Rev(s), Rev(old), Rev(new), n))
选择#2:自己动手
您可以简单地使用forandstrings.LastIndex()来查找可替换的子字符串并替换它们。
- 1 回答
- 0 关注
- 181 浏览
添加回答
举报
0/150
提交
取消