【问题标题】:Error in replacing text in R在 R 中替换文本时出错
【发布时间】:2013-01-09 00:38:58
【问题描述】:

我正在使用 sub 替换 R 中的一个文本。

 x<-"My name is ${name}"
 sub("${name}","Tiger",x)

错误信息:

Error in sub("${name}", "Tiger", x) : 
  invalid regular expression '${name}', reason 'Invalid contents of {}'

输入文本有 {},如何解决这个错误?

【问题讨论】:

    标签: regex r replace runtime-error


    【解决方案1】:

    使用fixed=TRUE 参数:

    sub("${name}","Tiger",x, fixed=TRUE)
    # [1] "My name is Tiger"
    

    【讨论】:

      【解决方案2】:

      ${}需要转义:

      sub("\\$\\{name\\}","Tiger",x)
      # [1] "My name is Tiger"
      

      【讨论】:

      • 我将建议您也查看gsubfn 软件包,但全新安装会给我带来段错误问题...在研究该问题时,我发现至少有一个用户处于相同情况。我在 Mac 上。
      • @G,如果我缺少所需的软件包或软件,我可以建议您在安装或使用过程中抛出错误或警告吗?除了强制 R 关闭的段错误之外的任何东西......
      • 它已经检查了 tcltk 功能以及 tcltk 本身,如果没有找到,则替换 R 代码。问题可能是由于 R 本身或 Mac 版本的问题,但我没有 Mac 可以进一步调查。
      猜你喜欢
      • 1970-01-01
      • 2019-07-10
      • 1970-01-01
      • 2020-04-12
      • 2011-09-18
      • 2011-03-11
      • 1970-01-01
      • 2010-09-18
      • 1970-01-01
      相关资源
      最近更新 更多