Создать постоянную многострочную строку
Я хотел бы назначить многострочную строку для переменной в R, чтобы я мог вызвать переменную позже. Когда я пытаюсь paste("line 1", "line 2", sep = "\n")
я получил "line 1\nline 2"
, Когда я пытаюсь cat("line 1", "line 2", sep = "\n")
, Я получаю желаемый вывод, но это вывод не является постоянным (cat()
возвращает объект типа None
). Причина, по которой я пытаюсь использовать многострочную строку, заключается в том, что мне нужно отправить результаты запроса через SMTP-сервер (и пакет sendmailR
) в теле сообщения (не как вложение).
1 ответ
paste("line 1", "line 2", sep = "\n")
это правильный путь, вы получаете то, что вы хотели:
> a = paste("line 1", "line 2", sep = "\n")
> cat(a)
line 1
line 2>
Ваша путаница, вероятно, связана с тем, что print
экранирует выходные данные, поэтому печатает строку так, как этого ожидал бы синтаксический анализатор:
> print(a)
[1] "line 1\nline 2"
Обратите внимание на кавычки вокруг строки. cat
печатает вывод как есть. В обоих случаях объект один и тот же, отличается только формат вывода.
Очевидно, что вы можете создать строку непосредственно без paste
:
> a = "line1\nline2"
> cat(a)
line1
line2>