【发布时间】:2013-03-09 22:14:45
【问题描述】:
我尝试在字符串中添加单引号,但不知道该怎么做。例如,我想将 ABC 替换为 'ABC'。
我玩过paste、cat、print,但不知道该怎么做。
有什么办法吗?
谢谢, 文森特
【问题讨论】:
标签: r string concatenation single-quotes
我尝试在字符串中添加单引号,但不知道该怎么做。例如,我想将 ABC 替换为 'ABC'。
我玩过paste、cat、print,但不知道该怎么做。
有什么办法吗?
谢谢, 文森特
【问题讨论】:
标签: r string concatenation single-quotes
也许使用sQuote?
sQuote("ABC")
# [1] "'ABC'"
这个(就像它的兄弟dQuote)经常被用来在一些消息或打印到控制台的其他文本周围加上引号:
cat("ABC", "\n")
# ABC
cat(sQuote("ABC"), "\n")
# 'ABC'
请注意(如 ?sQuote 中所述),根据您的任务所需的引号类型,您可能需要先重置 options("useFancyQuotes")。例如,要确保该函数用简单的竖直 ASCII 引号装饰您的文本,请执行以下操作:
options(useFancyQuotes = FALSE)
sQuote("ABC")
# [1] "'ABC'"
【讨论】:
‘abc’ 。但我们真正需要的是'abc'。当运行 sql 它 sQuote 给出错误
options(useFancyQuotes = FALSE)来获得你想要的纯引号。 (有关其他选项,请参阅 ?sQuote。)
使用Reduce 和paste0
Reduce(paste0,list("'","a","'"))
[1] "'a'"
【讨论】:
扩展@vodka 答案:
s <- c("cat", "dog")
a <- "'"
mapply(paste0, a, s, a)
【讨论】:
也许我错过了什么:
s <- "cat"
a <- "'"
paste(a,s,a,sep="")
【讨论】:
只需使用paste:
R> paste("'", "ABC", "'", sep="")
[1] "'ABC'"
或新品种
R> paste0("'", "ABC", "'")
[1] "'ABC'"
【讨论】: