登录
首页 >  Golang >  Go问答

如何从 Go 中的字符串中替换第 n 个字符

来源:Golang技术栈

时间:2023-04-15 21:26:57 187浏览 收藏

本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《如何从 Go 中的字符串中替换第 n 个字符》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~

问题内容

我想替换原始字符串中的第 n 个字符。我可以使用 访问字符串中的第 n 个字符chars[i],但是当我为 赋值时chars[i],我得到一个错误。

package main
import "fmt"

func main() {
  var chars = "abcdef"
  fmt.Println(string(chars[3]))
  chars[3] = "z" // is not working
}

正确答案

发生这种情况是因为chars它实际上是一个字符串并且是不可变的。如果您适当地声明它(作为字节切片),那么您可以在尝试时分配给它。这是一个例子;

package main
import "fmt"

func main() {
  var chars = []byte{'a', 'b', 'c', 'd', 'e', 'f'}
  fmt.Println(string(chars[3]))
  fmt.Printf("%T\n", chars)
  chars[3] = 'z'
  fmt.Println(string(chars))
}

https://play.golang.org/p/N1sSsfIBQY

或者,您可以使用重新切片,如另一个答案中所示。

今天关于《如何从 Go 中的字符串中替换第 n 个字符》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>