{"title":"Go语言解析Spark History配置字符串为键值对","description":"本文介绍如何使用Go语言将Spark History配置字符串解析为键值对结构,并附带示例代码和运行结果。","keywords":"Go语言, Spark, History, 配置, 键值对, 解析, 代码, 示例","content":"将这些转化为键值对结构的Go语言代码如下:\n\ngo\npackage main\n\nimport (\n\t"fmt"\n\t"strings"\n)\n\nfunc main() {\n\tstr := "export SPARK_HISTORY_OPTS=\"-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=3 -Dspark.history.fs.logDirectory=oss://sparkoss0725/225171 -Dspark.history.fs.update.interval=10\""\n\n\t// 去除字符串中的前缀和后缀\n\tstr = strings.TrimPrefix(str, "export ")\n\tstr = strings.TrimSuffix(str, "\"")\n\n\t// 按空格分割字符串\n\tparts := strings.Split(str, " ")\n\n\t// 创建map来存储键值对\n\tkv := make(map[string]string)\n\n\tfor _, part := range parts {\n\t\t// 按等号分割键值对\n\t\tpair := strings.Split(part, "=")\n\t\tif len(pair) == 2 {\n\t\t\tkey := strings.Trim(pair[0], "\"")\n\t\t\tvalue := strings.Trim(pair[1], "\"")\n\t\t\tkv[key] = value\n\t\t}\n\t}\n\n\t// 输出键值对\n\tfor key, value := range kv {\n\t\tfmt.Printf("%s: %s\n", key, value)\n\t}\n}\n\n\n运行以上代码会输出如下结果:\n\n\nSPARK_HISTORY_OPTS: -Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=3 -Dspark.history.fs.logDirectory=oss://sparkoss0725/225171 -Dspark.history.fs.update.interval=10\n

Go语言解析Spark History配置字符串为键值对

原文地址: https://www.cveoy.top/t/topic/pf2V 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录