【问题标题】:Saving complex text string as an object in R将复杂的文本字符串保存为 R 中的对象
【发布时间】:2013-11-28 15:01:02
【问题描述】:

我正在尝试使用 system(mess) 在 R 中运行此终端命令:

mess <- "sed -i -e '62i\ \\\usepackage[margin=2cm]{geometry}' intro-spatial-rl.tex"

但它总是失败并出现以下错误:

Error: '\u' used without hex digits in character string starting ""sed -i -e '62i\ \\\u"

我看到paste 也用于系统命令,但这也失败了。

可以使用不同的正则表达式程序,但认为这可能对其他人有用并提高我对 R 如何处理字符的理解。谢谢!

【问题讨论】:

    标签: r escaping system


    【解决方案1】:

    您的问题是转义序列中 \ 的数量不相等。

    R 在这里看到两个转义序列:\\\u。第二个无效并给出错误。您可能还想转义第二个反斜杠,得到\\\\。同样,您可能还打算在 中转义之前的\,留下\\ 

    话虽如此,在这种情况下,将完全用 R 代码替换 sed 调用。我理解它的方式你只想插入一行文本。这在 R 中很容易(虽然不清楚你的输入和输出是什么)。

    【讨论】:

    • 6 个反斜杠用于 \? 的简单输出疯狂但似乎有效!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 2017-09-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多