package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?m)^(?!NIST-Privacy-v1\.1)(?!NIST-CSF-v1\.1).*-.*-.*[.-].*$`)
var str = `NIST-Privacy-v1.1
NIST-CSF-v1.1
AWS-CIS-v1.4-1.10
SOC-2-CC6.8
NIST-800-53rev5
NIST-800-53rev5-CM-3(1)
NIST-800-53rev5-AU-12(4)
SOC-2-CC6.1
NISTPrivacyFramework-v1.0
NISTPrivacyFramework-v1.0-PR.AC-P1
NIST-800-53rev5-AC-1
NIST-800-53rev5-IA-1`
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/