package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?mi)^(?!_?config|packages).*\/(?!(app|web|packages|repositories)\.)[^\/]*config$`)
var str = `Web/smtp.config
Libraries/Data/connectionStrings.config
_config/staging/smtp.config
Web/web.config
Web/web.release.config
Web/Views/web.config
Libraries/Data/app.config
Libraries/Data/packages.config
Data/app.config
packages/MiniProfiler.EF6.3.0.11/lib/net40/MiniProfiler.EntityFramework6.dll.config
packages/repositories.config
`
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/