我尝试向字符串添加单引号,但不知道该怎么做。例如我想用“ABC”替换 ABC。
我玩过
paste
、cat
、print
,但不知道怎么做。
有什么解决办法吗?
谢谢, 文森特
也许可以使用
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'"
只需使用
paste
:
R> paste("'", "ABC", "'", sep="")
[1] "'ABC'"
或者新品种
R> paste0("'", "ABC", "'")
[1] "'ABC'"
扩展@vodka的答案:
s <- c("cat", "dog")
a <- "'"
mapply(paste0, a, s, a)
使用
Reduce
和 paste0
Reduce(paste0,list("'","a","'"))
[1] "'a'"
也许我错过了一些东西:
s <- "cat"
a <- "'"
paste(a,s,a,sep="")
与
sprintf()
:
x <- c("paste", "cat", "print")
sprintf("'%s'", x)
# [1] "'paste'" "'cat'" "'print'"