1

http://www.ruby-doc.org/core-2.0/File.html

File.basename("/home/gumby/work/Hello.txt")           #=> "Hello.txt"
File.basename("/home/gumby/work/Hello.txt", ".txt")   #=> "Hello"

大文字と小文字を区別しないサフィックス用の API はありますか? 私は次のことを望みます:

File.basename("/home/gumby/work/Hello.TXT", ".txt")   #=> "Hello.TXT"

または"Hello"の代わりにを返します。"Hello.TXT""hello"

4

3 に答える 3

2

残念だけど違う。ただし、File.basename の実際のプラットフォームに依存しない部分は、サフィックスではなく、パス操作にあります。したがって、サフィックスの削除をサブで簡単に置き換えることができます。

File.basename(my_path).sub(/\.txt$/i, '')
于 2013-03-19T08:27:54.820 に答える
0

どうですか?

File.basename("ab.TXT","txt".upcase)
#=> "ab."
File.basename("ab.txt","TXT".downcase)
#=> "ab."
于 2013-03-19T08:31:20.077 に答える
-1
File.basename(file, File.extname(file))
于 2013-03-19T08:29:25.457 に答える