可以R paste()输出"\"吗?

Dav*_*uer 4 text r

如Intro to R手册中所述,

paste("\\")
Run Code Online (Sandbox Code Playgroud)

版画

[1] "\\"
Run Code Online (Sandbox Code Playgroud)

是否可以打印出粘贴

[1] "\"
Run Code Online (Sandbox Code Playgroud)

?

更新:我不希望Gavin这个很好的答案被卡在下面的评论中,所以我将它贴在这里:

print(xtable(as.matrix("\\citep{citation}")), sanitize.text.function = function(x) {x}) 
Run Code Online (Sandbox Code Playgroud)

Gre*_*now 6

你对如何存储某些内容以及它如何"打印"感到困惑.

您可以使用粘贴将\与其他内容组合在一起,但是如果您打印它,那么打印的表示将具有\来转义\,但是如果您使用cat将其输出到文件或屏幕,那么您将得到单个\ , 例如:

> tmp <- paste( "\\", "cite{", sep="" )
> print(tmp)
[1] "\\cite{"
> cat(tmp, "\n")
\cite{ 
Run Code Online (Sandbox Code Playgroud)


Rei*_*son 5

那是R 中单个“\”的打印表示。显然,正确的答案将取决于您的最终用法,但这样的事情会做:

> citations <- paste("title", 1:3, sep = "")
> cites <- paste("\\citep{", citations, "}", sep = "")
> writeLines(cites)
\citep{title1}
\citep{title2}
\citep{title3}
Run Code Online (Sandbox Code Playgroud)

使用writeLines()您可以使用以下内容将其输出到文件:

> writeLines(cites, con = file("cites.txt"))
Run Code Online (Sandbox Code Playgroud)

产生以下文件:

$ cat cites.txt 
\citep{title1}
\citep{title2}
\citep{title3}
Run Code Online (Sandbox Code Playgroud)