import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^(Depense|Recette)_Aller_\\d*_*(FEDER|RR974|POCT)_\\d{2}_\\d{4}_\\d{1,2}_\\d+C\\w*.xml$";
final String string = "Depense_Aller_4689.xml : flux PJ seul, bordereau déjà envoyé, à ne pas signer\n\n"
+ "Depense_Aller_4659_661C.xml : flux complet, à signer DAF\n\n"
+ "Depense_Aller_FEDER_01_2017_1_19C.xml\n\n"
+ "Depense_Aller_FEDER_01_2017_1_19C_Auto.xml\n"
+ "Depense_Aller_7864_FEDER_01_2017_2_19C_Auto.xml\n\n"
+ "Depense_Aller_4344_SMPRR_01_2017_2_34C_Auto.xml\n\n"
+ "Depense_Aller_4344_RR974_01_2017_6_566C_Auto.xml\n"
+ "Depense_Aller_4038_RR974_01_2017_473C_Auto.xml\n\n"
+ "Depense_Aller_3469_RR974_01_2017_271C_Auto.xml : flux complet paye, à signer RH\n\n"
+ "Depense_Aller_4271_FEDER_01_2016_5A_Auto.xml : flux en annulation, à ne pas signer\n\n"
+ "Depense_Aller_2649_RR974_01_2017_5C_Auto.xml : flux indemnités élus Région, à signer par ?\n\n"
+ "Depense_Aller_3222_RR974_01_2017_216C_Auto.xml : flux indemnités élus CESER, à signer par ?\n\n"
+ "Depense_Aller_3222_RR974_01_2017_219C_Auto.xml : flux indemnités élus CCEE, à signer par ?\n\n\n"
+ "Appgfi\\wwwGFTEST\\astre\\astromate\\pes\\recette :\n\n"
+ "Recette_Aller_4271_RR974_01_2017_6C_Auto.xml : flux recette, à signer DAF\n\n"
+ "Recette_Aller_4271_RR974_01_2016_21A_Auto.xml : flux recette en annulation, à ne pas signer\n";
final String subst = "";
final Pattern pattern = Pattern.compile(regex);
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