$re = '/^(?<title>.+?)[_.\s-]+(?<season>S\d+)(?:[.\-\s]*?(?<seasonmax>S?\d+))?(?=[_.\s](?!E\d+))/mi';
$str = 'Cops.S35E18.1080p.WEB.h264-BAE.mkv
Anger Management (2012) - S02E15 - Charlies Patients Hook Up [WEBDL-1080p][AC3 5.1][h264]-BS.mkv
Ahsoka (2023) - S01E01 - Part One Master and Apprentice [DSNP WEBDL-1080p][EAC3 Atmos 5.1][h264]-NTb.mkv\'
Loki....... - S01E01 - Glorious Purpose [DSNP WEBDL-1080p Proper][EAC3 Atmos 5.1][h264]-TOMMY.mkv\'
Family - Guy (1999) - S01E01 - Death Has a Shadow [DSNP WEBDL-1080p][AAC 2.0][h264]-PHOENiX.mkv\'
Neighbours.S39E012.2023-10-05.Episode.8915.1080p.AMZN.WEB-DL.DDP2.0.H.264-SDCC
Rick and Morty (2013) - S06E06 - JuRicksic Mort [HMAX DD 5.1 WEBDL-1080p][x264]-NTb.mkv
Hello.World.S01.ntb.mkv
Hello.World.S01 - S03.ntb.mkv
Hello.World.S1.ntb.mkv
Hello.World.S01 S03.ntb.mkv
Hello.World.S01.Extras.ntb.mkv
Hello_World_S01_S02.ntb.mkv
Hello_World_S01-S03_ntb.mkv
Hello_World_S1_ntb.mkv
Hello.World.S1E03.ntb.mkv
Hello.World.S031 E01.ntb.mkv
Hello_World_S01E01_ntb.mkv
Hello_World_S1E03_ntb.mkv
Hello.World.S01.E01.ntb.mkv
Hello_World_S01_E01_ntb.mkv';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
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 PHP, please visit: http://php.net/manual/en/ref.pcre.php