I am trying to extract a JSON object from a custom payload.
My regex is working fine here: https://regex101.com/r/G5lBDC/1/
But Go returns no matches
re := regexp.MustCompile(`/payload:\\"(.+?)\\\\\\"\\\\/g`)
rawResponse := "version:1 response:<status:200 message:\"OK\" payload:\"{\\\"id\\\":\\\"ll2.card_4U45pAWUMCLhsu\\\",\\\"uid\\\":\\\"ll2.acc_727V8M6GjPJ9I26CqZHgxN\\\"}\\\"\\013\\022\\006ll2-cc\\032\\0019\" endorsement:<endorser:\"\
\\007PASSKIT\\022\\224\\010>"
rawJSON := re.FindStringSubmatch(rawResponse)
Go Playground https://play.golang.org/p/XRfbExNa9V
You can try this: ( Run here )
package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`payload:\\"(\{[^\}]+\})`)
var str = `version:1 response:<status:200 message:\"OK\" payload:\"{\\\"id\\\":\\\"ll2.card_4U45pAWUMCLhsu\\\",\\\"uid\\\":\\\"ll2.acc_727V8M6GjPJ9I26CqZHgxN\\\"}\\\"\\013\\022\\006ll2-cc\\032\\0019\" endorsement:<endorser:\"\
\\007PASSKIT\\022\\224\\010>`
rawJSON := re.FindStringSubmatch(str)
fmt.Println(rawJSON[1])
}