package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`<\?xml(.+?)\?>`)
var str = `<?xml version="1.0" encoding="utf-8"?>
<ns1:StudySQL_response xmlns:ns1="urn:global:cs:jdbc:study">
<Statement_response>
<row>
<XMLTYPE.GETSTRINGVAL(MESSAGE)><study studypid="200">
<studyname>&quot;Immume Treat Phase3&quot;</studyname>
<statusCD>ongoing</statusCD>
<clinicalphase>III</clinicalphase>
<primaryIndication>for lung cancer</primaryIndication>
<startDate>2010-Jun-28</startDate>
</study>
</XMLTYPE.GETSTRINGVAL(MESSAGE)>
</row>
<row>
<XMLTYPE.GETSTRINGVAL(MESSAGE)><study studypid="201">
<studyname>&quot;ABPM Study&quot;</studyname>
<statusCD>on hold</statusCD>
<clinicalphase>III</clinicalphase>
<primaryIndication>skin cancel</primaryIndication>
<startDate>2015-Mar-08</startDate>
</study>
</XMLTYPE.GETSTRINGVAL(MESSAGE)>
</row>
</Statement_response>
</ns1:StudySQL_response>
`
if len(re.FindStringIndex(str)) > 0 {
fmt.Println(re.FindString(str),"found at index",re.FindStringIndex(str)[0])
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Golang, please visit: https://golang.org/pkg/regexp/