用逗号分隔的引号连接字符串

Concatenate strings with quotation marks separated by commas

我想写一个将多个字符串拼接成一个字符串的函数,但是每个部分都用引号标记并用逗号分隔。

该函数基本上应该采用输入 "a""b" 并打印此 c('"a", "b"'),这将导致如下输出:

c('"a", "b"')

# [1] "\"a\", \"b\""

如何在函数体中创建这个 c('"a", "b"')

这个怎么样:

x <- c("a", "b")
out <- paste0("c(", paste0('"', x, '"', collapse=", "), ")")
out
#> [1] "c(\"a\", \"b\")"
eval(parse(text=out))
#> [1] "a" "b"

reprex package (v2.0.1)

创建于 2022-05-13

dQuote:

v <- c("a", "b", "c")
toString(dQuote(v, q = ""))
#[1] "\"a\", \"b\", \"c\""

你可以通过一个 paste0():

x <- c("a", "b", "c")

paste0('"', x, '"', collapse = ", ")

# [1] "\"a\", \"b\", \"c\""

sprintf() + toString():

toString(sprintf('"%s"', x))
# [1] "\"a\", \"b\", \"c\""