如何使用 paste0 函数将 \' 放入我的字符串中

How to put \' in my string using paste0 function

我有一个数组:

t <- c("IMCR01","IMFA02","IMFA03")

我想让它看起来像这样:

"\'IMCR01\'","\'IMFA02\'","\'IMFA03\'"

我尝试了不同的方法,例如:

paste0("\'",t,"\'")
paste0("\'",t,"\'")
paste0("\\'",t,"\\'")

但其中 none 是正确的。其他功能也可以。

实际上你的第二次尝试是正确的:

paste0("\'",t,"\'")

如果你想告诉 paste 使用文字反斜杠,你需要转义它一次(但不是两次,因为你需要在正则表达式模式中)。这会将以下内容输出到 R 中的控制台:

[1] "\'IMCR01\'" "\'IMFA02\'" "\'IMFA03\'"

这里的技巧是反斜杠甚至在控制台输出中被 R 转义了。如果您改为将 t 写入文本文件,您将只会看到一个您想要的反斜杠:

write(t, file = "/path/to/your/file.txt")

但是为什么R在写入自己的控制台时需要转义反斜杠?一种可能性是,如果要写文字 \n 那么这实际上会被控制台解释为换行符。因此,逃避的需求仍然存在。