Rio*_*Rio 13 newline r line paste
在使用函数paste()或在R中连接字符串的任何函数时,我们如何插入新行?
关于此主题的网页很多,但没有一个明确回答或提供有效的解决方案.我确切地说我不想使用函数cat,我需要使用字符串.以下是我的所有尝试(来自不同论坛的所有建议),它们都失败了......
msg <- "==================================================\n"
msg <- paste(msg, "Var:")
print(msg)
Run Code Online (Sandbox Code Playgroud)
输出:
[1]"============================================== ==== \n Var:"
msg <- "==================================================\n"
msg <- paste0(msg, "Var:")
print(msg)
Run Code Online (Sandbox Code Playgroud)
输出:
[1]"============================================== ====\NVAR:"
msg <- "=================================================="
msg <- paste(msg, "Var:", sep = "\n")
print(msg)
Run Code Online (Sandbox Code Playgroud)
输出:
[1]"============================================== ====\NVAR:"
msg <- sprintf("==================================================\n")
msg <- paste(msg, "Var:")
print(msg)
Run Code Online (Sandbox Code Playgroud)
输出:
[1]"============================================== ====\NVAR:"
我相信我已尽力而为......如果你有想法?!
Ric*_*ven 13
你可以试试 strsplit
msg <- "==================================================\n"
msg2 <- paste(msg, "Var:")
strsplit(msg2, "\n")[[1]]
# [1] "=================================================="
# [2] " Var:"
Run Code Online (Sandbox Code Playgroud)
noquote如果您不需要引号,也可以使用它.
noquote(strsplit(msg2, "\n")[[1]])
# [1] ==================================================
# [2] Var:
Run Code Online (Sandbox Code Playgroud)
这实际上产生相同的结果,如果你是使用print与quote = FALSE
您还可以定义自己的打印方法
print.myClass <- function(x, ...) strsplit(x, "\n")[[1]]
class(msg2) <- "myClass"
print(msg2)
# [1] "=================================================="
# [2] " Var:"
Run Code Online (Sandbox Code Playgroud)