登录
首页 >  Golang >  Go问答

切割字符串的方法在golang中

来源:stackoverflow

时间:2024-03-19 11:00:32 251浏览 收藏

在 Go 语言中,可以通过使用 `strings.Split` 函数将字符串分割为数组,从而更准确地解析字符串参数。例如,如果要解析参数 "name = text,text,text,text,text" 和 "value = 0,285,404,6,24",可以将 `name` 和 `value` 分别分割为数组 `matchField` 和 `matchValue`,然后使用 `parameter` 函数逐个解析参数,最终得到期望的输出: ``` Parameters: {"text":"0"} Parameters: {"text":"285"} Parameters: {"text":"404"} Parameters: {"text":"6"} Parameters: {"text":"24"} ```

问题内容

我有两个参数名称和值,我试图在运行时解析它们。

在运行时我传递以下值:

name = text,text,text,text,text
value = 0 ,285,404,6,24

目前输出如下;

parameters: {"text,text,text,text,text":"0,285,404,6,24"}

实际上它必须显示为,

parameters: {"text":"0"}
parameters: {"text":"285"}
parameters: {"text":"404"}
parameters: {"text":"6"}
parameters: {"text":"24"}

以下是我的代码;

package main

import "fmt"

func main() {
   var m string
   var matchField = []string{"index,index,index,index"}
   var matchValue =[]string{"29,4,87,54"}

   for i := 0 ; i < 1 ; i++ {
        m = parameter(matchField[i], matchValue[i])
        fmt.Printf("Result: %s\n", m)
   }
}


func parameter(name string, value string) (matcher string) {
    var result string
    if name != "" || value != "" {
            result = fmt.Sprintf("{\"%s\":\"%s\"}", name, value)
    }
    return result
}

我想知道如何准确地显示输出。


解决方案


您需要使用 strings.split 来创建数组,而不是具有单个元素的数组:

play.golang.org/p/b5rffvBUwqd

package main

import "fmt"
import "strings"

func main() {
   var m string
   matchField := strings.Split("index,index,index,index", ",")
   matchValue := strings.Split("29,4,87,54", ",")

   for i := 0 ; i < len(matchField); i++ {
        m = parameter(matchField[i], matchValue[i])
        fmt.Printf("Parameters: %s\n", m)
   }
}


func parameter(name string, value string) (matcher string) {
    var result string
    if name != "" || value != "" {
            result = fmt.Sprintf("{\"%s\":\"%s\"}", name, value)
    }
    return result
}

今天关于《切割字符串的方法在golang中》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

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