import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "([\\w_]+)\\t([\\w_]+)\\t([\\w_]+)";
final String string = "albatross_v7 g_coeffExit ExtBandsExitCoeff\n"
+ "albatross_v7 g_dayFilter ExtDayNotToTrade\n"
+ "albatross_v7 g_period ExtBandsPeriod\n"
+ "albatross_v7 g_tradeDuration ExtTimeWindowDuration\n"
+ "albatross_v7 g_tradeStartTime ExtTimeWindowStart\n"
+ "double_rsi g_coeffRSIFast ExtCoeffRsiFast\n"
+ "double_rsi g_dayFilter ExtDayNotToTrade\n"
+ "double_rsi g_RSIDiffLevel ExtMinRsiDiff\n"
+ "double_rsi g_RSIPeriod ExtSlowRsiPeriod\n"
+ "double_rsi g_tradeDuration ExtTimeWindowDuration\n"
+ "double_rsi g_tradeStartTime ExtTimeWindowStart\n"
+ "double_rsi g_trend ExtTrendModeFilter\n"
+ "double_rsi g_volatility ExtVolatilityModeFilter\n"
+ "double_rsi_h4_ei g_coeffRSIFast ExtCoeffRsiFast\n"
+ "double_rsi_h4_ei g_dayFilter ExtDayNotToTrade\n"
+ "double_rsi_h4_ei g_exitParameter ExtExitParameter\n"
+ "double_rsi_h4_ei g_exitType ExtExitType\n"
+ "double_rsi_h4_ei g_RSIDiffLevel ExtMinRsiDiff\n"
+ "double_rsi_h4_ei g_RSIPeriod ExtSlowRsiPeriod\n"
+ "double_rsi_h4_ei g_tradeDuration ExtTimeWindowDuration\n"
+ "double_rsi_h4_ei g_tradeStartTime ExtTimeWindowStart\n"
+ "double_rsi_h4_ei g_trend ExtTrendModeFilter\n"
+ "double_rsi_h4_ei g_volatility ExtVolatilityModeFilter\n"
+ "hook g_CoeffExit ExtExitCoeff\n"
+ "hook g_Cycle ExtCycleModeFilter\n"
+ "hook g_CycleLevel ExtCycleLevel\n"
+ "hook g_CyclePeriod ExtCyclePeriod\n"
+ "hook g_Exit ExtExitType\n"
+ "hook g_Order ExtOrderMode\n"
+ "hook g_OrderBar ExtBarsNumber\n"
+ "hook g_OrderPendingBar ExtOrderDeleteBar\n"
+ "hook g_RSIPeriod ExtRsiPeriod\n"
+ "hook g_Setup ExtEntrySetup\n"
+ "hook g_Threshold ExtRsiThreshold\n"
+ "hook g_Trend ExtTrendModeFilter\n"
+ "hook g_TrendPeriod ExtTrendPeriod\n"
+ "hook g_Volatility ExtVolatilityModeFilter\n"
+ "hook g_TradeDuration ExtTimeWindowDuration\n"
+ "hook g_TradeStartTime ExtTimeWindowStart\n"
+ "metaphor_v5 g_barsNumber ExtBarsNumber\n"
+ "metaphor_v5 g_coeffBarsExit ExtExitCoeffBars\n"
+ "metaphor_v5 g_dayFilter ExtDayNotToTrade\n"
+ "metaphor_v5 g_tradeDuration ExtTimeWindowDuration\n"
+ "metaphor_v5 g_tradeStartTime ExtTimeWindowStart\n"
+ "metaphor_v6 g_barsNumber ExtBarsNumber\n"
+ "metaphor_v6 g_BBKCPeriod ExtBbkcPeriod\n"
+ "metaphor_v6 g_coeffBarsExit ExtExitCoeffBars\n"
+ "metaphor_v6 g_dayFilter ExtDayNotToTrade\n"
+ "metaphor_v6 g_tradeDuration ExtTimeWindowDuration\n"
+ "metaphor_v6 g_tradeStartTime ExtTimeWindowStart\n"
+ "metaphor_v6_quick g_barsNumber ExtBarsNumber\n"
+ "metaphor_v6_quick g_BBKCPeriod ExtBbkcPeriod\n"
+ "metaphor_v6_quick g_coeffBarsExit ExtExitCoeffBars\n"
+ "metaphor_v6_quick g_dayFilter ExtDayNotToTrade\n"
+ "metaphor_v6_quick g_tradeDuration ExtTimeWindowDuration\n"
+ "metaphor_v6_quick g_tradeStartTime ExtTimeWindowStart\n"
+ "rsi_snr g_dayFilter ExtDayNotToTrade\n"
+ "rsi_snr g_RSIPeriod ExtRsiPeriod\n"
+ "rsi_snr g_SNRLevel ExtSnrLevel\n"
+ "rsi_snr g_SNRPeriod ExtSnrPeriod\n"
+ "rsi_snr g_tradeDuration ExtTimeWindowDuration\n"
+ "rsi_snr g_tradeStartTime ExtTimeWindowStart\n"
+ "rsi_snr g_trend ExtTrendModeFilter\n"
+ "rsi_snr g_volatility ExtVolatilityModeFilter\n"
+ "rsi_snr_h1_ei g_dayFilter ExtDayNotToTrade\n"
+ "rsi_snr_h1_ei g_exitParameter ExtExitParameter\n"
+ "rsi_snr_h1_ei g_exitType ExtExitType\n"
+ "rsi_snr_h1_ei g_RSIPeriod ExtRsiPeriod\n"
+ "rsi_snr_h1_ei g_SNRLevel ExtSnrLevel\n"
+ "rsi_snr_h1_ei g_SNRPeriod ExtSnrPeriod\n"
+ "rsi_snr_h1_ei g_tradeDuration ExtTimeWindowDuration\n"
+ "rsi_snr_h1_ei g_tradeStartTime ExtTimeWindowStart\n"
+ "rsi_snr_h1_ei g_trend ExtTrendModeFilter\n"
+ "rsi_snr_h1_ei g_volatility ExtVolatilityModeFilter\n"
+ "rush_v2_h1 g_counter ExtEntrySignalCounter\n"
+ "rush_v2_h1 g_dayFilter ExtDayNotToTrade\n"
+ "rush_v2_h1 g_exitBar ExtExitBar\n"
+ "rush_v2_h1 g_tradeDuration ExtTimeWindowDuration\n"
+ "rush_v2_h1 g_tradeStartTime ExtTimeWindowStart\n"
+ "super_smoother_ei g_dayFilter ExtDayNotToTrade\n"
+ "super_smoother_ei g_DiffPeriod ExtRsiPeriodDiff\n"
+ "super_smoother_ei g_exitParameter ExtExitParameter\n"
+ "super_smoother_ei g_exitType ExtExitType\n"
+ "super_smoother_ei g_PeriodFast ExtFastRsiPeriod\n"
+ "super_smoother_ei g_tradeDuration ExtTimeWindowDuration\n"
+ "super_smoother_ei g_tradeStartTime ExtTimeWindowStart\n"
+ "super_smoother_ei g_trend ExtTrendModeFilter\n"
+ "super_smoother_ei g_volatility ExtVolatilityModeFilter";
final String subst = "update t_strategy\\n set t_strategy_parameters = replace(t_strategy_parameters, '$2', '$3')\\n where t_strategy_ea = '$1' and\\n t_strategy_parameters like '%$2%' and\\n t_strategy_version = '1.1';";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
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