Ruby, 경로 + 파일 이름에서 경로 가져 오기


88

프로그래밍 언어 : Ruby 1.9

문제 문자열 : C:/Test/blah.txt
toC:/Test/

쉬운 질문이라는 것을 알고 있지만 Google과 Ruby 빠른 참조 File에는 해결책이 없습니다.
그리고 저는 Regex에 대한 경험이 없습니다.

답변:


171

Ruby File.dirname방법을 사용하십시오 .

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

4
나를 위해 File.dirname("/a/b/c/d")올바르게 반환 /a/b/c하지만 File.dirname("/a/b/c/d/")(후행 슬래시) 반환합니다 /a/b/c.
Jason

3
루비 문서에는 현재 찾고있는 내용을 정확히 찾을 수없는 정보가 너무 많습니다. 이미 알고있는 경우에는 복습하거나 모든 것을 알고 자한다면 공부하는 것이 좋습니다. 프로젝트를 진행 중이고이 한 가지만 알아야하는 경우에는 끔찍합니다. 이 답변에 감사드립니다.
JackChance

0

더 다재다능한 것은 Ruby Pathname 클래스입니다.

require 'pathname'

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

제공합니다 C:/Test/.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.