在R中创建一个带有特殊字符的字符串

Posted

技术标签:

【中文标题】在R中创建一个带有特殊字符的字符串【英文标题】:Create a string with special character in R 【发布时间】:2021-08-15 22:35:01 【问题描述】:

我在创建带有特殊字符的字符串时遇到问题。我问了一个类似的问题,我也阅读了关于我的问题的类似问题的答案,但我无法找到解决方案。

我想创建一个带有特殊字符的string 字符。我一直在尝试使用cat,但我知道它仅用于打印,而不是用于将字符串保存在 R 中的变量中。

我想要这样的结果:

> cat("C:\\Users\\ppp\\ddd\\")
C:\Users\ppp\ddd\

我一直在尝试使用pastecollapse,但没有成功:

> x = c("C:","Users","ppp","ddd")
> t <- paste0(x, collapse = '\n')
> t
[1] "C:\nUsers\nppp\nddd"

【问题讨论】:

你应该使用file.path而不是pastefile.path("C:","Users","ppp","ddd") 我不想要 R 的工作目录。我想创建一个字符串。 就是这样 是的,但是要创建一个用这个\作为分隔符的字符串,而不是这个/ 1) / 适用于 Windows,2) file.path 将为您的操作系统选择正确的默认分隔符,这是它优于 paste 的原因之一,3) 您可以覆盖默认分隔符,你应该阅读?file.path的帮助文件 【参考方案1】:

你确定不想要

x = c("C:","Users","ppp","ddd")
t <- paste0(x, collapse = '/')
t
[1] "C:/Users/ppp/ddd"

R 使用这种格式来设置工作目录。

你也可以这样做:

x = c("C:","Users","ppp","ddd")
t <- paste0(x, collapse = '\\')
t
[1] "C:\\Users\\ppp\\ddd"

虽然这个结果看起来不对,但如果你在 R 中使用 shell() 命令中的字符串来解释 Windows,例如,它将被正确解释

【讨论】:

我知道工作目录在 R 中是如何工作的,但我希望采用我为 MATLAB 解释的方式 如果要在 MATLAB 中使用,您不能以在 R 中工作的方式存储它,然后在您的 MATLAB 代码中更改它吗?【参考方案2】:

没有回答...但是

t <- paste0(x, collapse = '/')

“C:/Users/ppp/ddd”似乎在 Windows 上工作。

【讨论】:

以上是关于在R中创建一个带有特殊字符的字符串的主要内容,如果未能解决你的问题,请参考以下文章

R REGEX匹配-至少1个小写字母,1个数字,并且没有8个长度的特殊字符[重复]

如何在R中提取带有特殊字符的模式之间的字符串[重复]

python学习--输出带有特殊字符的字符串

ORACLE 用户的 密码 支持哪些特殊字符,不支持哪些字符?

如何在python中读取带有特殊字符的文本文件

转Java中特殊的String类型