package main import ( "io/ioutil" "log" "os" "regexp" ) func main() { regexps := []*regexp.Regexp{} for _, re := range os.Args[2:] { re = "(?m:" + re + ")" re_c, err := regexp.Compile(re) if err != nil { log.Fatal(re, ": ", err) } regexps = append(regexps, re_c) } s, err := ioutil.ReadFile(os.Args[1]) if err != nil { log.Fatal(err) } for _, re := range regexps { for _, match := range re.FindAll(s, -1) { print(string(match), "\n") } } }