package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?m)[^=]+\s=\s(?<value_v2c>[^=]+)(?:varbind-delimiter|$)`)
var str = `.1.3.6.1.4.1.6876.4.3.308.0 = INTEGER: 2 varbind-delimiter .1.3.6.1.4.1.6876.4.3.304.0 = Hex-STRING: E7 81 B0 E8 89 B2 varbind-delimiter .1.3.6.1.4.1.6876.4.3.305.0 = Hex-STRING: E7 81 B0 E8 89 B2 varbind-delimiter .1.3.6.1.4.1.6876.4.3.306.0 = Hex-STRING: 61 6C 61 72 6D 2E 53 74 6F 72 61 67 65 43 6F 6E 6E 65 63 74 69 76 69 74 79 41 6C 61 72 6D 20 2D 20 E3 82 A4 E3 83 99 E3 83 B3 E3 83 88 3A 20 E3 82 B9 E3 83 88 E3 83 AC E3 83 BC E3 82 B8 20 E3 83 91 E3 82 B9 E3 81 AE E5 86 97 E9 95 B7 E6 80 A7 E3 81 8C E4 BD 8E E4 B8 8B E3 81 97 E3 81 BE E3 81 97 E3 81 9F 20 28 33 30 36 36 32 36 38 36 32 29 0A E3 82 B5 E3 83 9E E3 83 AA 3A 20 E3 82 B9 E3 83 88 E3 83 AC E3 83 BC E3 82 B8 20 E3 83 87 E3 83 90 E3 82 A4 E3 82 B9 20 6E 61 61 2E 36 30 30 36 30 31 36 30 63 65 38 30 32 64 30 30 66 32 66 37 65 61 64 39 64 30 65 38 65 30 31 31 20 E3 81 B8 E3 81 AE E3 83 91 E3 82 B9 E3 81 AE E5 86 97 E9 95 B7 E6 80 A7 E3 81 8C E4 BD 8E E4 B8 8B E3 81 97 E3 81 BE E3 81 97 E3 81 9F E3 80 82 E3 83 91 E3 82 B9 20 76 6D 68 62 61 33 34 3A 43 30 3A 54 33 3A 4C 30 20 E3 81 8C E3 83 80 E3 82 A6 E3 83 B3 E3 81 97 E3 81 A6 E3 81 84 E3 81 BE E3 81 99 E3 80 82 E5 BD B1 E9 9F BF E3 82 92 E5 8F 97 E3 81 91 E3 82 8B E3 83 87 E3 83 BC E3 82 BF E3 82 B9 E3 83 88 E3 82 A2 3A 20 55 6E 6B 6E 6F 77 6E E3 80 82 0A E6 97 A5 E4 BB 98 3A 20 32 30 32 32 2F 30 32 2F 30 33 20 38 3A 31 35 3A 34 35 0A E3 83 9B E3 82 B9 E3 83 88 3A 20 65 74 76 30 31 65 73 78 30 36 2E 64 72 61 67 6F 6E 2E 6C 6F 63 61 6C 0A E3 83 AA E3 82 BD E3 83 BC E3 82 B9 20 E3 83 97 E3 83 BC E3 83 AB 3A 20 76 63 45 54 56 31 2D 45 54 56 30 31 0A E3 83 87 E3 83 BC E3 82 BF E3 82 BB E3 83 B3 E3 82 BF E3 83 BC 3A 20 74 61 2D 30 33 65 74 76 0A E5 BC 95 E6 95 B0 3A 0A 20 20 20 20 65 76 65 6E 74 54 79 70 65 49 64 20 3D 20 65 73 78 2E 70 72 6F 62 6C 65 6D 2E 73 74 6F 72 61 67 65 2E 72 65 64 75 6E 64 61 6E 63 79 2E 64 65 67 72 61 64 65 64 0A 20 20 20 20 6F 62 6A 65 63 74 49 64 20 3D 20 68 6F 73 74 2D 34 37 31 36 0A 20 20 20 20 6F 62 6A 65 63 74 4E 61 6D 65 20 3D 20 65 74 76 30 31 65 73 78 30 36 2E 64 72 61 67 6F 6E 2E 6C 6F 63 61 6C 0A 20 20 20 20 31 20 3D 20 6E 61 61 2E 36 30 30 36 30 31 36 30 63 65 38 30 32 64 30 30 66 32 66 37 65 61 64 39 64 30 65 38 65 30 31 31 0A 20 20 20 20 32 20 3D 20 76 6D 68 62 61 33 34 3A 43 30 3A 54 33 3A 4C 30 0A 20 20 20 20 33 20 3D 20 55 6E 6B 6E 6F 77 6E 0A varbind-delimiter .1.3.6.1.4.1.6876.4.3.307.0 = STRING: "etv01esx06.dragon.local"`
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/