\我有以下路徑:E:\Path\Reports.
紅寶石單反斜線存儲在變
如果我想這個路徑保存在紅寶石的變量,我需要使用「\\」:
$location = "E:\\Path\\Reports"
有沒有辦法避免在變量中使用「\\」,並且仍然有正確的路徑?
\我有以下路徑:E:\Path\Reports.
紅寶石單反斜線存儲在變
如果我想這個路徑保存在紅寶石的變量,我需要使用「\\」:
$location = "E:\\Path\\Reports"
有沒有辦法避免在變量中使用「\\」,並且仍然有正確的路徑?
如果你使用這個
location = 'E:\path\Reports'
它將自動爲你逃脫
更簡單的方法是使用File.join
。它將使用/
,但Ruby將在Windows下關注將其轉換爲\
。
$location = File.join('E', 'Path', 'Reports')
# $location is actually 'E/Path/Reports' now,
# but Ruby knows to convert the '/' to '\' on Windows.
這也有使您的代碼獨立於操作系統的好處。
這也工作得很好。 – user3566591 2014-12-05 19:44:21
可以使用%q
:
$location = %q{E:\Path\Reports}
=> $location
"E:\\Path\\Reports"
=> puts $location
E:\Path\Reports
該解決方案也適用。 – user3566591 2014-12-05 19:43:41
所以,你想要寫一個反斜槓逃逸無它? – August 2014-12-04 23:37:19
我想要做的是能夠有這樣的東西:$ location =「E:\ Path \ Reports」,變量的值仍然是「E:\ Path \ Reports」 – user3566591 2014-12-04 23:49:08