您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何从Golang中的字符串中删除多余的空格/空格?

如何从Golang中的字符串中删除多余的空格/空格?

似乎您可能希望同时使用\s速记字符类和\p{Zs}Unicode属性来匹配Unicode空间。但是,这两个步骤都不能用1个正则表达式替换来完成,因为您需要两个不同的替换,并且ReplaceAllStringFunc只允许使用整个匹配字符串作为参数(我不知道如何检查哪个组匹配)。

因此,我建议使用两个正则表达式:

样例代码

package main

import (
    "fmt"
    "regexp"
)

func main() {
    input := "   Text   More here     "
    re_leadclose_whtsp := regexp.MustCompile(`^[\s\p{Zs}]+|[\s\p{Zs}]+$`)
    re_inside_whtsp := regexp.MustCompile(`[\s\p{Zs}]{2,}`)
    final := re_leadclose_whtsp.ReplaceAllString(input, "")
    final = re_inside_whtsp.ReplaceAllString(final, " ")
    fmt.Println(final)
}
Go 2022/1/1 18:22:48 有318人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶