import Foundation
let pattern = #"^(?!NOT FOUND \*\*\*\*\* ).*$"#
let regex = try! NSRegularExpression(pattern: pattern, options: .anchorsMatchLines)
let testString = #"""
a68ebf048cb21948ae814f88f8573267 *Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e03.Bastille.Day.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e03.Bastille.Day.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part23.rar
143bc5637fca8831800682da24fabdbe *Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e03.Bastille.Day.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e03.Bastille.Day.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part24.rar
eecbe9a184700963a09a3dc6486d1f72 *Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e03.Bastille.Day.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e03.Bastille.Day.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part25.rar
51f6341b48d44788775ee676e9fd106a *Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e03.Bastille.Day.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e03.Bastille.Day.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.sfv
NOT FOUND ***** Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part01.rar
NOT FOUND ***** Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part02.rar
NOT FOUND ***** Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part03.rar
NOT FOUND ***** Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part04.rar
NOT FOUND ***** Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part05.rar
NOT FOUND ***** Torrented Movies\Battlestar Galactica\Season 1\Video Files\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL\Battlestar.Galactica.s01e04.Act.Of.Contrition.iNTERNAL.WS.DVDRip.XviD-MEDiEVAL.part06.rar
"""#
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