import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^([\\w\\W]+?)((?:\\w+\\.){0,}([^A-Za-zА-Яа-я_])h([^A-Za-zА-Яа-я_]))(?:\\sAS \\[[A-Za-zА-Яа-я_]+\\]){0,}";
final String string = "SELECT `L`, \n"
+ "`r_e`, \n"
+ "T1.[r_w], \n"
+ "`Soi`, \n"
+ "`Sor`, \n"
+ "`Swc`, \n"
+ "`i_k_2`, \n"
+ "`mu_w`, \n"
+ "`mu_o`, `Газоконденсатный_фактор` AS [Газоконденсатный_фактор], `Газосодержание_нефти` AS [Газосодержание_нефти], \n"
+ "`Геологические_запасы_конденсата`, \n"
+ "`Геологические_запасы_нефти`, \n"
+ "`Геологические_запасы_свободного_газа`, \n"
+ "`D`, \n"
+ "`Извлекаемые_запасы_конденсата`, \n"
+ "`Извлекаемые_запасы_нефти_новых_скважин`, \n"
+ "`Извлекаемые_запасы_нефти`, \n"
+ "`КИН`, \n"
+ "`Количество_буровых`, \n"
+ "`Количество_скважин`, \n"
+ "`FracCount`, \n"
+ "`Fw`, \n"
+ "`F`, \n"
+ "`Коэффициент_компенсации`, \n"
+ "`phi`, \n"
+ "`Ef`, \n"
+ "`Объемный_коэффициент_воды`, \n"
+ "`Bo`, \n"
+ "`Период_строительства_скважины`, \n"
+ "`Плотность_воды`, \n"
+ "`ro_o`, \n"
+ "`Плотность_сетки_скважин`, \n"
+ "`Площадь_объекта`, \n"
+ "`k_h`, \n"
+ "`k_f`, \n"
+ "T1.`Pwf`, \n"
+ "`Psat`, \n"
+ "`c_w`, \n"
+ "`c_o`, \n"
+ "`c_r`, \n"
+ "`S`, \n"
+ "`Соотношение__доб_нагн__0___беск`, \n"
+ "`Стартовая_приемистость`, \n"
+ "`Стартовый_дебит_жидкости`, \n"
+ "`Стартовый_дебит_нефти`, \n"
+ "`m1`, \n"
+ "`m2`, \n"
+ "`Стоимость_скв__ГС+ГРП`, \n"
+ "`Стоимость_скв__ГС+МГРП`, \n"
+ "`Стоимость_скв__ГС`, \n"
+ "`Стоимость_скв__ННС+ГРП`, \n"
+ "`Стоимость`, \n"
+ "`Pi`, \n"
+ "`t_p`, \n"
+ "`Тип_заканчивания_доб_скв`, \n"
+ "`Тип_заканчивания_нагн__скв`, \n"
+ "`wf`, \n"
+ "T1.[h] FROM [DeleteMe5$A1:DM253]\n\n\n";
final String subst = "$1 Max($2) AS [Year]";
final Pattern pattern = Pattern.compile(regex, Pattern.DOTALL);
final Matcher matcher = pattern.matcher(string);
// The substituted value will be contained in the result variable
final String result = matcher.replaceAll(subst);
System.out.println("Substitution result: " + result);
}
}
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 Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html