Поскольку вы только хотите проверить, содержит ли имя файла четырехточечное число git в диапазоне 1900-2099, вы можете сделать это очень просто, определив такой обработчик:
on hasYearInTitle(filmTitle as text)
repeat with yyyy from 1900 to 2099
if yyyy is in the filmTitle then return true
end repeat
return false
end hasYearInTitle
Затем вы можете назвать этот обработчик и передать ему название фильма, например:
hasYearInTitle("The.Fantasy.1997.DVDRip.XviD-ETRG.avi") --> true
hasYearInTitle("The.Fantasy.197.DVDRip.XviD-ETRG.avi") --> false
hasYearInTitle("2001.A.Space.Odyssey.1968.avi") --> true
hasYearInTitle("2001.A.Space.Odyssey.avi") --> true (hm...)
В качестве дополнительного примечания, фильмы, проиндексированные newznab серверы следуют строгому протоколу именования файлов, который позволяет медиасерверу (на вашем компьютере) легко анализировать его и быстро извлекать информацию, относящуюся к (как видно из вашего имени файла примера): название фильма, дата выпуска фильма, источник материал, качество кодирования, формат кодирования (код c), группа релизов и формат файла, в котором они содержатся.
Хотя некоторые имена файлов содержат больше информации, а некоторые они должны всегда появляются в установленном порядке. Это делает их очень простыми для анализа в случае необходимости, но если вы хотите создать организованную мультимедийную библиотеку, вам лучше всего использовать мультимедийный сервер, для которого доступны отличные, бесплатные и давно доступные варианты программного обеспечения. для macOS и практически любой другой операционной системы.