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

问题描述 投票:4回答:1

我有一个数组:

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

我想让它看起来像这样:

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

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

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

但是它们都不是正确的。其他功能也都可以。

r string paste
1个回答
7
投票

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

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

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

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

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

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

但是为什么R写入自己的控制台时需要转义反斜杠?一种可能是,如果要编写文字\n,则控制台实际上会将其解释为换行符。因此,仍然需要窃听。

© www.soinside.com 2019 - 2024. All rights reserved.