重複の可能性:
R 文字列のエスケープ文字 (バックスラッシュ) を無視する
文字列の「\」を文字列の「/」に置き換えたい。たとえば、最初の文字列は「d:\temp\1.txt」で、「d:/temp/1.txt」が必要です。試してみましgsub
たが、思い通りに動作しません。しかし、もっと簡単なエクササイズをすると
> gsub("a", "b", "banana")
[1] "bbnbnb"
正常に動作しています。特殊文字 "/" と "\" を使用するトリックはありますか?
重複の可能性:
R 文字列のエスケープ文字 (バックスラッシュ) を無視する
文字列の「\」を文字列の「/」に置き換えたい。たとえば、最初の文字列は「d:\temp\1.txt」で、「d:/temp/1.txt」が必要です。試してみましgsub
たが、思い通りに動作しません。しかし、もっと簡単なエクササイズをすると
> gsub("a", "b", "banana")
[1] "bbnbnb"
正常に動作しています。特殊文字 "/" と "\" を使用するトリックはありますか?
@Paul、これは機能しません-R for Windows FAQを参照してください。
Rがバックスラッシュで何をするかを見てください:
a <- "d:\temp\1.txt"
cat(a)
# d: emp.txt
のように逃げる..
gsub("\\", "/", a)
Fehler in gsub("\\", "/", a) :
ungültiger regulärer Ausdruck '\', Grund 'Trailing backslash'
..動作しません..
これはうまくいくでしょう:
b <- "d:\\temp\\1.txt"
cat(b)
# d:\temp\1.txt
gsub("\\\\", "/", b)
# "d:/temp/1.txt"