Je travaille sur la partie de téléchargement de fichiers d'une application Rails. Différents types de fichiers sont traités différemment par l'application.
Je souhaite créer une liste blanche de certaines extensions de fichiers pour vérifier les fichiers téléchargés pour voir où ils doivent aller. Tous les noms de fichiers sont des chaînes.
J'ai besoin d'un moyen de vérifier uniquement la partie d'extension de la chaîne de nom de fichier. Les noms de fichiers sont tous au format "some_file_name.some_extension".
ruby-on-rails
ruby
Bryan Cosgrove
la source
la source
"file_with_no_extension".split('.').last
?tar.gz
,tar.bz2
.File.extname("example.png").downcase
assurer que l'extension n'est pas en majusculesUtiliser la
extname
méthode de la classe FileVous pouvez également avoir besoin d'une
basename
méthodela source
Sujet assez ancien, mais voici le moyen de se débarrasser du point de séparation d'extension et des éventuels espaces de fin:
Exemples:
la source
Ne serait-il pas plus facile de faire cela pour utiliser le séparateur d'extension?
la source