【问题标题】:How to replace string in Golang?如何在 Golang 中替换字符串?
【发布时间】:2022-01-12 09:46:19
【问题描述】:

我想替换除第一个和最后一个字母之外的用户名。

例如:

handsome -> h******e

한국어    -> 한*어

这是我的代码:

var final = string([]rune(username)[:1]
for i :=0l i <len([]rune(username)); i++{
 if i >1 {
  final = final + "*"
 }
}

【问题讨论】:

    标签: string go


    【解决方案1】:

    如果将字符串转换为[]rune,则可以修改该切片并在最后将其转换回string

    func blur(s string) string {
        rs := []rune(s)
        for i := 1; i < len(rs)-1; i++ {
            rs[i] = '*'
        }
        return string(rs)
    }
    

    测试它:

    fmt.Println(blur("handsome"))
    fmt.Println(blur("한국어"))
    

    输出(在Go Playground 上试试):

    h******e
    한*어
    

    请注意,此blur() 函数也适用于少于 3 个字符的字符串,在这种情况下不会模糊任何内容。

    【讨论】:

      猜你喜欢
      • 2017-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-20
      • 1970-01-01
      • 2013-08-17
      • 2018-09-02
      • 2012-12-25
      相关资源
      最近更新 更多