package helpers import ( "encoding/xml" "fmt" "log" "testing" ) /* /remote.php/dav/files/naudachu/temp/id/ 33225 HTTP/1.1 200 OK */ /* type MultistatusObj struct { XMLName xml.Name `xml:"multistatus"` Multistatus struct { XMLName xml.Name `xml:"response"` Other string `xml:",innerxml"` } }*/ type MultistatusObj struct { XMLName xml.Name `xml:"multistatus"` Multistatus struct { XMLName xml.Name `xml:"response"` Propstat struct { XMLName xml.Name `xml:"propstat"` Prop struct { XMLName xml.Name `xml:"prop"` Other string `xml:",innerxml"` } } } } const ( EXAMPLE = "\n/remote.php/dav/files/naudachu/temp/id/33225HTTP/1.1 200 OK\n" ) func GetFileID(str string) string { var multi MultistatusObj err := xml.Unmarshal([]byte(str), &multi) if err != nil { fmt.Print(err) } return multi.Multistatus.Propstat.Prop.Other } func TestGetFileID(t *testing.T) { str := GetFileID(EXAMPLE) log.Print(str) }