import Foundation
let pattern = #"^(Depense|Recette)_Aller_\d*_*(FEDER|RR974|POCT)_\d{2}_\d{4}_\d{1,2}_\d+C\w*.xml$"#
let regex = try! NSRegularExpression(pattern: pattern)
let testString = #"""
Depense_Aller_4689.xml : flux PJ seul, bordereau déjà envoyé, à ne pas signer
Depense_Aller_4659_661C.xml : flux complet, à signer DAF
Depense_Aller_FEDER_01_2017_1_19C.xml
Depense_Aller_FEDER_01_2017_1_19C_Auto.xml
Depense_Aller_7864_FEDER_01_2017_2_19C_Auto.xml
Depense_Aller_4344_SMPRR_01_2017_2_34C_Auto.xml
Depense_Aller_4344_RR974_01_2017_6_566C_Auto.xml
Depense_Aller_4038_RR974_01_2017_473C_Auto.xml
Depense_Aller_3469_RR974_01_2017_271C_Auto.xml : flux complet paye, à signer RH
Depense_Aller_4271_FEDER_01_2016_5A_Auto.xml : flux en annulation, à ne pas signer
Depense_Aller_2649_RR974_01_2017_5C_Auto.xml : flux indemnités élus Région, à signer par ?
Depense_Aller_3222_RR974_01_2017_216C_Auto.xml : flux indemnités élus CESER, à signer par ?
Depense_Aller_3222_RR974_01_2017_219C_Auto.xml : flux indemnités élus CCEE, à signer par ?
Appgfi\wwwGFTEST\astre\astromate\pes\recette :
Recette_Aller_4271_RR974_01_2017_6C_Auto.xml : flux recette, à signer DAF
Recette_Aller_4271_RR974_01_2016_21A_Auto.xml : flux recette en annulation, à ne pas signer
"""#
let stringRange = NSRange(location: 0, length: testString.utf16.count)
let substitutionString = #""#
let result = regex.stringByReplacingMatches(in: testString, range: stringRange, withTemplate: substitutionString)
print(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 Swift 5.2, please visit: https://developer.apple.com/documentation/foundation/nsregularexpression