Bill Dunlap Spotfire, TIBCO Software wdunlap tibco.com
> -----Original Message----- > From: r-help-boun...@r-project.org > [mailto:r-help-boun...@r-project.org] On Behalf Of Sean Zhang > Sent: Sunday, December 13, 2009 4:01 PM > To: David Winsemius > Cc: r-help@r-project.org > Subject: Re: [R] how to replace a single backward slash with > a doublebackward slash? > > David and William, > Thanks for your reply which make me know the concept of > escape symbols. > > As David guessed, I was trying to write a function which will > accept a path cut from windows explorer. > and as you know windows explorer uses "\". > > e.g., c:\temp\function.r > > I originally would like that the function is able to change > the example path > into "c:/temp/function.r" > David's final comment seems to suggest this is impossible... > If so, it is a limitation because I have to manually change > "\" into "/" > each time. You can use scan to avoid manually changing the backslashes to slashes. E.g., > z <- scan(what="",sep="\n") 1: \\somecomputer\e\Documents and Settings\John Q Public\My Documents\The Results.pdf 2: Read 1 item > z [1] "\\\\somecomputer\\e\\Documents and Settings\\John Q Public\\My Documents\\The Results.pdf" Bill Dunlap Spotfire, TIBCO Software wdunlap tibco.com > > But it is good to know this limitation. > > Correct me, if I misunderstand and there is no such a limitation. > > Thanks again. > > -Sean > > > > > > > > > On Sun, Dec 13, 2009 at 5:26 PM, David Winsemius > <dwinsem...@comcast.net>wrote: > > > > > On Dec 13, 2009, at 5:11 PM, Sean Zhang wrote: > > > > Dear R-helpers: > >> > >> Hours ago, I asked how to replace a single forward slash > with a double > >> backward slash and recieved great help. Thanks again for > all the repliers. > >> > >> In the meantime, I wonder how to replace a single backward > slash with a > >> double backward slash? > >> > >> e.g., I want change "c:\test" into "c:\\test" > >> > >> I tried the following but does not work. > >> gsub("\\\","\\\\",) > >> > >> Can someone help? > >> > > > > Your problem may be that you think there actually is a "\" > in "c:\test". > > There isn't: > > > > > grep("\\\\", "c:\test") # which would have found a true "\" > > integer(0) > > > > It's an escaped "t", which is the tab character = "\t": > > > > > grep("\\\t", "c:\test") > > [1] 1 > > > cat("rr\tqq") > > rr qq > > > > If your goal is to make file paths in Windows correctly, > then you have two > > choices: > > > > a) use doubled "\\"'s in the literal strings you type, or ... > > b) use "/"'s > > > > So maybe you should explain what you are doing? We don't > request that > > background out of nosiness, but rather so we can give better answers > > > > -- > > > > David Winsemius, MD > > Heritage Laboratories > > West Hartford, CT > > > > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.