В настоящее время я использую File :: Basename fileparse, чтобы отделить каталог, базовое имя файла и его расширение, используя что-то вроде этого:
my($myfile_name,$mydirectory, $file_extension) = fileparse($$rhash_params{'storage_full_path_location'},'\..{1,4}');
Но обратите внимание, что есть вариант, в котором вы можете на самом деле предоставить массив суффиксов для функции, этот массив будет содержать все известные расширения файлов.
Итак, я пытаюсь найти безопасный способ сделать это, поскольку я видел, что у меня есть странные имена файлов для обработки, например, file.0f1.htm и т. Д.
Вопрос:
- Есть ли список часто используемых
расширение для Windows и Unix
системы? Но в моем случае это в основном
для Windows.
- И безопасно ли
Предположим, что все имена файлов в
Windows должна иметь расширение
заканчивается трехбуквенными символами?
И если есть еще лучший способ сделать это, пожалуйста, поделитесь.
Спасибо.
Обновление:
Так что, очевидно, я должен быть пьян, чтобы забыть об этом другом расширении. :)
Таким образом, я обновил текущее регулярное выражение, чтобы разрешить от 1-4 символов.
В этом случае, как мне изменить строку регулярного выражения, чтобы она соответствовала ей?
Или это даже лучшая идея, чтобы найти все эти часто используемые расширения от Google и поместить их в массив для передачи вместо функции? Моими пользователями обычно являются студенты или преподаватели.