如何将dput()输出赋值给对象,实现字符串加双引号并逗号分隔?
问题原因
你无法赋值的核心是cat()函数仅负责将内容输出到控制台,自身返回值为NULL,因此xxxx <- cat(...)的写法永远拿不到目标字符串,且你额外调用dput/dget读写临时文件的步骤完全多余,可以直接对原始向量操作。
解决代码
library(data.table) # 原始数据构造 x <- data.table(c('ACCN-NJ-A55O-01A-11D-A25L-08','ACCN-NJ-A55O-11D-11D-A25L-08', 'ACCN-05-4249-01A-01D-1105-08', 'ACCN-S2-AA1A-15C-12D-A397-08')) # 直接构造目标字符串并赋值给对象 result_str <- paste0('"', paste(x$V1, collapse = '", "'), '"') # 可执行如下代码验证输出和你预期一致 cat(result_str)
复制到剪贴板的操作
根据你的操作系统选择对应代码执行即可:
- Windows系统:直接运行
writeClipboard(result_str) - macOS系统:运行
cat(result_str, file = pipe("pbcopy")) - Linux系统(需提前安装xclip):运行
cat(result_str, file = pipe("xclip -selection clipboard"))
内容的提问来源于stack exchange,提问作者SUMIT
相关产品推荐
相关产品推荐

