package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?s)^([\w\W]+?)((?:\w+\.){0,}([^A-Za-zА-Яа-я_])h([^A-Za-zА-Яа-я_]))(?:\sAS \[[A-Za-zА-Яа-я_]+\]){0,}`)
var str = `SELECT \`L\`,
\`r_e\`,
T1.[r_w],
\`Soi\`,
\`Sor\`,
\`Swc\`,
\`i_k_2\`,
\`mu_w\`,
\`mu_o\`, \`Газоконденсатный_фактор\` AS [Газоконденсатный_фактор], \`Газосодержание_нефти\` AS [Газосодержание_нефти],
\`Геологические_запасы_конденсата\`,
\`Геологические_запасы_нефти\`,
\`Геологические_запасы_свободного_газа\`,
\`D\`,
\`Извлекаемые_запасы_конденсата\`,
\`Извлекаемые_запасы_нефти_новых_скважин\`,
\`Извлекаемые_запасы_нефти\`,
\`КИН\`,
\`Количество_буровых\`,
\`Количество_скважин\`,
\`FracCount\`,
\`Fw\`,
\`F\`,
\`Коэффициент_компенсации\`,
\`phi\`,
\`Ef\`,
\`Объемный_коэффициент_воды\`,
\`Bo\`,
\`Период_строительства_скважины\`,
\`Плотность_воды\`,
\`ro_o\`,
\`Плотность_сетки_скважин\`,
\`Площадь_объекта\`,
\`k_h\`,
\`k_f\`,
T1.\`Pwf\`,
\`Psat\`,
\`c_w\`,
\`c_o\`,
\`c_r\`,
\`S\`,
\`Соотношение__доб_нагн__0___беск\`,
\`Стартовая_приемистость\`,
\`Стартовый_дебит_жидкости\`,
\`Стартовый_дебит_нефти\`,
\`m1\`,
\`m2\`,
\`Стоимость_скв__ГС+ГРП\`,
\`Стоимость_скв__ГС+МГРП\`,
\`Стоимость_скв__ГС\`,
\`Стоимость_скв__ННС+ГРП\`,
\`Стоимость\`,
\`Pi\`,
\`t_p\`,
\`Тип_заканчивания_доб_скв\`,
\`Тип_заканчивания_нагн__скв\`,
\`wf\`,
T1.[h] FROM [DeleteMe5$A1:DM253]
`
var substitution = "$1 Max($2) AS [Year]"
fmt.Println(re.ReplaceAllString(str, substitution))
}
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/