Ruby, Pfad von Pfad + Dateiname abrufen


87

Programmiersprache: Ruby 1.9

Problem String: C:/Test/blah.txt
bisC:/Test/

Ich weiß, dass es eine einfache Frage ist, aber Google und der Ruby Quickref für Filehaben keine Lösung für mich.
Und ich habe keine Erfahrung mit Regex.

Antworten:


168

Verwenden Sie die Ruby- File.dirnameMethode.

File.dirname("C:/Test/blah.txt")
# => "C:/Test" 

4
Für mich File.dirname("/a/b/c/d")kehrt korrekt zurück, /a/b/caber File.dirname("/a/b/c/d/")(abschließender Schrägstrich) kehrt auch zurück /a/b/c.
Jason

3
Es gibt einfach zu viele Informationen ohne Kontext in den Ruby-Dokumenten, um genau das zu finden, wonach Sie gerade suchen. Großartig, um aufzufrischen, wenn Sie es bereits gewusst haben, oder zu studieren, wenn Sie versuchen, alles zu wissen, schrecklich, wenn Sie an einem Projekt arbeiten und nur diese eine Sache wissen müssen. Vielen Dank für diese Antwort, die mir das Leben sehr erleichtert hat.
JackChance

0

Vielseitiger wäre die Ruby Pathname-Klasse:

require 'pathname'

pn = Pathname.new("C:/Test/blah.txt")
p pn.dirname.to_s + Pathname::SEPARATOR_LIST

was gibt C:/Test/.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.