package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?m)(?P<idval>\b[A-F\d]{40}\b)(.|\n)*?(?P<ip>\b((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b).?(?P<date>\b\d{4}(-\d{2}){2} (\d{2}:){2}\d{2}\b)`)
var str = `
IDVal 4273E6D162ED2717A1CF4207A254004CD3F5307B
Posted 2022-12-28 07:35:55
Status 2022-12-28 08:10:11
Entry 21.12.26.23 2022-12-28 13:10:30
Entry 113.132.26.203 2022-12-28 12:56:30
Entry 31.12.27.22 2022-12-28 12:35:30
IDVal 0D12D8E72DED99EE31BB0C57789352BED0CEEEFF
Posted 2022-12-28 07:30:55
Status 2022-12-28 06:10:11
Entry 51.102.52.36 2022-12-28 07:10:30
IDVal D947623B30C9D6E142E7D90FC7368B1A2A4F5045
Posted 2010-12-27 04:35:55
Status 2010-12-26 03:10:11
Entry 11.12.147.2 2022-12-28 07:20:30
Entry 91.177.62.236 2022-12-27 07:10:30
Entry 78.102.152.89 2022-12-25 07:10:30`
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/