我正在尋找一種有效的方式來轉換回斜線向前R.斜線有時我複製從Windows目錄中的鏈接,我得到的是這樣的:有效地將反斜線R中
C:\Users\jd\Documents\folder\file.txt
我該如何快速更改爲C:/Users/jd/Documents/folder/file.txt
?我甚至無法將上面的表達看作角色。它會引發錯誤"\u used without hex digits in character string starting ""C:\u"
。
謝謝。
我正在尋找一種有效的方式來轉換回斜線向前R.斜線有時我複製從Windows目錄中的鏈接,我得到的是這樣的:有效地將反斜線R中
C:\Users\jd\Documents\folder\file.txt
我該如何快速更改爲C:/Users/jd/Documents/folder/file.txt
?我甚至無法將上面的表達看作角色。它會引發錯誤"\u used without hex digits in character string starting ""C:\u"
。
謝謝。
在R,你已經逃脫\
與\\
所以,你的路徑應該是:
x <- "C:\\Users\\jd\\Documents\\folder\\file.txt"
爲了得到這一點,你可以這樣做:
x <- readline()
然後,在提示符,粘貼你的未修改路徑(CTRL + V然後ENTER)
最後,將\\
更改爲/
無處不在,你可以通過逃避\
使用gsub
,再一次,而是兩次,如下:
gsub("\\\\", "/", x)
# [1] "C:/Users/jd/Documents/folder/file.txt"
感謝您的回答。我想將該反斜線表達式轉換爲斜槓的唯一原因是因爲在Windows中,當我嘗試複製特定前向的地址時,它只有一個反斜槓。現在,手動添加反斜槓效率不高。現在,我明白複製根本行不通。 –
'readClipboard()'是另一個可以自動將複製文本中的反斜槓從一個轉換爲兩個的選項。 – thelatemail
@thelatemail謝謝,看來'readClipboard()'是我正在尋找的。 –
如果我理解正確的話,你想擺脫字符串編輯。爲了能夠使用gsub
,您必須先將所有\
手動更改爲\\
。那麼,爲什麼不首先將\
更改爲/
?
如果您有在剪貼板中的字符串您可以使用
x=scan("clipboard",what="string")
這給
"C:\\Users\\jd\\Documents\\folder\\file.txt"
也就是說,它會自動將所有\
到\\
。 我知道 - 不是很方便,但我知道解決編輯的唯一方法。
這裏是從剪貼板
x <- gsub ("\\\\", "/", readClipboard() )
AutoHotkey的程序轉換所述地址的一個步驟的方法:
^+v::
StringReplace, clipboard, clipboard, \,/,All
send %clipboard%
控制+ c中的文件路徑之後,使用控制+移+ V粘貼
我使用Path Copy Copy,它是Windows的插件,允許您在Windows中右鍵單擊文件/文件夾時創建自定義複製命令。因此,我的右鍵單擊菜單具有「使用正斜槓複製完整路徑」作爲選項,該選項以正斜線複製文件/文件夾。我猜測它每年都會從手動更改斜槓到R的格式,爲我節省了天。
如果你想數最少的擊鍵轉換反斜線粘貼路徑時,使用RStudio snippet定義如下:
snippet pp
"`r gsub('"', "", gsub("\\\\", "/", readClipboard()))`"
然後鍵入第,TAB,ENTER和文本粘貼在剪貼板上,反斜槓替換爲正斜線並用引號包圍。
這裏是一旦上面的片段已被定義我通常採取複製文件路徑RStudio以下步驟:
未經片斷確定指標的溶液是
writeClipboard(gsub("\\\\", "/", readClipboard()))
我喜歡用RStudio加載snippetsaddin其具有功能'Convert slash':
它將反向所有斜線無論是在選定的代碼塊,或者如果沒有選擇(或僅選擇空白),它將反轉剪貼板中的所有斜槓並將其粘貼到當前光標位置。
工程就像一個魅力。 :) –
出於興趣,你爲什麼需要這樣做? –
我知道R中的tab函數有助於快速找到位置,但只是想知道是否還有其他解決方法。我也可以將工作目錄更改爲文件夾的位置。我只是在玩耍,並試圖將反斜槓轉換爲正斜槓,並不是直截了當,因爲好奇心問這個問題。 –