在R语言中,用反斜杠转义另一个反斜杠会导致字符串中出现两个反斜杠,而不是一个。

5

我正在Linux Mint 13上使用R和R Studio,尝试获取类似于这样的字符串:

domain\username

但是当我这样做时:

usr <- "domain\\username"

结果变量 usr 中出现了两个 \:

#[1] "domain\\username"

我找到的所有资料都表明这是正确的方法,但我却得到了这样的结果。有什么建议吗?是设置出了问题吗?

1个回答

4
也许在print和cat之间有所不同。因此,如果您有以下字符串
usr <- "domain\\username"

当我们输入代码并执行print(usr)时,会输出:

#[1] "domain\\username"

然而,调用cat(usr)我们会得到:

#domain\username

这是你期望的吗?cat将实际评估转义,而print则只返回对象的确切表单。您可以使用cat测试转义是否按照您认为应该的方式工作。

在此处查看有关cat与print的区别的信息:R Inferno


我很感谢这个建议。我发现我需要传递的值实际上需要4个'才能正确发送和接收。这对我找到解决方案非常有帮助。谢谢。 - wtribbey

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接