gpt4 book ai didi

xml - 遍历 XML

转载 作者:数据小太阳 更新时间:2023-10-29 03:28:58 24 4
gpt4 key购买 nike

我有一个 XML 字符串

str := "<data><node><value>Foo</value></node></data>"

我需要将值替换为另一个值 (Bar)。给定路径

"data.node.value"

Go 有没有办法找到并替换那个值?所以调用 Replace(str, "data.node.value","Bar")

<data><node><value>Bar</value></node></data>

最佳答案

我认为这不可能,因为您只有一个字符串。你需要

  1. 将 XML 解码为结构,
  2. 然后操作结构
  3. 然后将其编码回字符串。

像这样:

package main

import (
"encoding/xml"
"fmt"
)

type Data struct {
Node Node `xml:"node"`
}

type Node struct {
Value string `xml:"value"`
}

func main() {
str := "<data><node><value>Foo</value></node></data>"

var d Data
xml.Unmarshal([]byte(str), &d) // unmarshal it

d.Node.Value = "Bar" // manipulate the struct

xmlout, _ := xml.Marshal(d) // re-marshal it

fmt.Println("result: ", string(xmlout))
}

关于xml - 遍历 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26597787/

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