gpt4 book ai didi

go - 字符串拆分和连接

转载 作者:IT王子 更新时间:2023-10-29 02:26:29 25 4
gpt4 key购买 nike

我是一个go新手,我有如下数据Time Server Type Class Method-Message。在 json 字段分隔符“|”的帮助下设法获得以下数据 Time|Server|Type|Class|Method-Message 我想在第四个索引中拆分 - |Method-Message 然后附加一个字段分隔符“|”然后加入以下 Time|Server|Type|Class|Method|Message 结束。已尝试使用 n = s[6 : 6+strings.Index(s [6:], "/")] 它所做的是删除 -Message 然后以 Time|Server|Type|Class|Method 结束我附加了一个字段分隔符,然后以 Time|Server|Type|Class|Method|Message| 结束,但无法附加 -Message 它已从数据中删除。

最佳答案

当原始字符串中没有 / 字符时,我不确定为什么要使用 strings.Index(s[6:], "/") , 但您可以通过几种方式替换 - 字符:

您最初尝试拆分并加入两次:

msg := "Time Server Type Class Method-Message"
msg = strings.Join(strings.Split(msg, " "), "|")
msg = strings.Join(strings.Split(msg, "-"), "|")

或者稍微更有效,只加入一次:

msg := "Time Server Type Class Method-Message"
parts := strings.Split(msg, " ")
parts = append(parts[:4], strings.Split(parts[4], "-")...)
newMsg := strings.Join(parts, "|")

或者多次调用 strings.Replace:

newMsg := strings.Replace(strings.Replace(msg, " ", "|", -1), "-", "|", -1)

或者用一个正则表达式:

newMsg := regexp.MustCompile(`[ -]`).ReplaceAllString(msg, "|")

关于go - 字符串拆分和连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37924371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com