Pracuję nad częścią aplikacji Rails do wysyłania plików. Aplikacja obsługuje różne typy plików.
Chcę utworzyć białą listę niektórych rozszerzeń plików, aby porównać przesłane pliki, aby zobaczyć, gdzie powinny się znaleźć. Wszystkie nazwy plików są ciągami.
Potrzebuję sposobu, aby sprawdzić tylko część rozszerzenia ciągu nazwy pliku. Wszystkie nazwy plików mają format „jakaś_nazwa_pliku.s rozszerzenie_nazwa”.
ruby-on-rails
ruby
Bryan Cosgrove
źródło
źródło
"file_with_no_extension".split('.').last
?tar.gz
,tar.bz2
.File.extname("example.png").downcase
aby upewnić się, że rozszerzenie nie jest we wszystkich przypadkachUżyj
extname
metody z klasy FileMożesz też potrzebować
basename
metodyźródło
Dość stary temat, ale oto sposób na pozbycie się kropki separatora rozszerzenia i możliwych spacji końcowych:
Przykłady:
źródło
Moim zdaniem łatwiej by było to zrobić żeby dostać jazdę z przedłużką separatora.
źródło