package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?<soap_envelope><soap:Envelope.*\/soap:Envelope>)`)
var str = ` {"severity":"DEBUG","logger":"org.mule.module.http.internal.HttpMessageLogger","thread":"[dmvproxy-1.0.2-RELEASE].HTTP_Listener_Configuration.worker.790","message":"LISTENER\nPOST \/inolrsproxy HTTP\/1.1\r\nContent-Type: text\/xml; charset=UTF-8\r\nAccept: *\/*\r\nUser-Agent: Apache CXF 3.1.4\r\nX-Takipi-SN: 18480\r\nCache-Control: no-cache\r\nPragma: no-cache\r\nHost: dmv-proxy.dmv-proxy.rancher.internal:8081\r\nConnection: keep-alive\r\nContent-Length: 3413\r\n\r\n<soap:Envelope xmlns:soap=\"http:\/\/schemas.xmlsoap.org\/soap\/envelope\/\"><soap:Body><test>testvalue<\/test><\/soap:Body><\/soap:Envelope>"}`
for i, match := range re.FindAllString(str, -1) {
fmt.Println(match, "found at index", i)
}
}
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/