У меня есть следующая строка в ruby.
string = 'filename.jpg'
Как я могу получить все после последнего.?(в этом случае возвращается расширение файла)
Спасибо, Джон
str = "some.file.ext" str.match(/[^.]+?$/) # => #<MatchData "ext"> str.match(/[^.]+?$/)[0] # => "ext"
File.extname('filename.jpg').gsub('.', '')
ИЛИ
'filename.jpg'.split('.')[-1]
Вы можете использовать метод Руби String#split()
String#split()
irb(main):001:0> string="foo.tar.gz" => "foo.tar.gz" irb(main):002:0> string.split(".")[-1] => "gz"
string.scan(/\.(.*)/)[-1][-1] #=> "jpg" string.match(/\.(.*)/)[-1] #=> "jpg" string.split(".")[-1] #=> "jpg"