Linguagem de programação: Ruby 1.9
String do problema: C:/Test/blah.txt
paraC:/Test/
Eu sei que é uma pergunta fácil, mas o Google e o quickref do Ruby File
não têm solução para mim.
E não tenho experiência com Regex.
Use o File.dirname
método Ruby .
File.dirname("C:/Test/blah.txt")
# => "C:/Test"
File.dirname("/a/b/c/d")
retorna corretamente ,/a/b/c
masFile.dirname("/a/b/c/d/")
(barra final) também retorna/a/b/c
.Mais versátil seria a classe Ruby Pathname:
require 'pathname' pn = Pathname.new("C:/Test/blah.txt") p pn.dirname.to_s + Pathname::SEPARATOR_LIST
que dá
C:/Test/
.fonte