Язык программирования: Ruby 1.9
Строка проблемы: C:/Test/blah.txt
доC:/Test/
Я знаю, что это простой вопрос, но Google и Ruby quickref for не File
имеют для меня решения.
И у меня нет опыта работы с Regex.
Используйте File.dirname
метод Ruby .
File.dirname("C:/Test/blah.txt")
# => "C:/Test"
File.dirname("/a/b/c/d")
правильно возвращается,/a/b/c
ноFile.dirname("/a/b/c/d/")
(завершающая косая черта) также возвращается/a/b/c
.Более универсальным был бы класс Ruby Pathname:
require 'pathname' pn = Pathname.new("C:/Test/blah.txt") p pn.dirname.to_s + Pathname::SEPARATOR_LIST
что дает
C:/Test/
.источник