为了账号安全,请及时绑定邮箱和手机立即绑定

将普通空格/空格转换为不间断空格?

将普通空格/空格转换为不间断空格?

Go
米脂 2021-09-10 20:59:03
这是一个简单的问题,但我仍然不知道如何去做。说我有这个字符串:x := "this string"'this' 和 'string' 之间的空格默认为常规的unicode 空格字符32/U+0020。我如何将其转换为Go 中不间断的unicode 空白字符U+00A0?
查看完整描述

2 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

使用文档将标准strings包确定为可能的候选对象,然后搜索它(或通读所有内容,您应该知道您使用的任何语言的标准库/包中有什么可用)以找到strings.Map.


那么转换任何空白的明显简短的简单解决方案是:


package main


import (

    "fmt"

    "strings"

    "unicode"

)


func main() {

    const nbsp = '\u00A0'

    result := strings.Map(func(r rune) rune {

        if unicode.IsSpace(r) {

            return nbsp

        }

        return r

    }, "this string")


    fmt.Printf("%s → %[1]q\n", result)

}

Playground


如前所述,如果您真的只想替换," "那么也许strings.Replace.


查看完整回答
反对 回复 2021-09-10
  • 2 回答
  • 0 关注
  • 244 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信