Rubyで拡張子なしのファイル名や、ファイル名の末尾1文字を取得する

Fileクラスのbasenameメソッドを使います。

basenameの第1引数にファイルパスを渡すとそのまんまファイル名が取得されます。

file="tmp/hoge_a.fuga"
p File.basename(file)
#=> hoge_a.fuga

第2引数に拡張子を与えると、拡張子を除いたファイル名が取得できます。

file="tmp/hoge_a.fuga"
p File.basename(file, ".fuga")
#=> hoge_a

今回は上記の「a」が取得したかったので[-1]をつけます

file="tmp/hoge_a.fuga"
p File.basename(file, ".fuga")[-1]
#=> a

できた

おわり

タグ
公開日