Как в Go lang работать с регулярными выражениями

Работа с регулярками в Go lang выглядит весьма любопытно. Для начала нужно скомпилировать регулярное выражение:

regexp, err = regexp.Compile(`expression`)
if err != nil {
	panic(err)
}

Обратите внимание каким символом обёрнуто правило вместо кавычек или апострофа. Теперь можно работать со скомпилированным выражением:

match := randomRegexp.FindStringSubmatch(mysting)

В переменной math будет массив значений, где нолевым элементом будет вся строка, а последующие — сматченные по маскам. Посмотреть содержание можно так:

for index, match := range r.FindStringSubmatch(str) {
        fmt.Printf("[%d] %s\n", index, match)
    }