代码之家  ›  专栏  ›  技术社区  ›  user4487475

R-将信息保留在双引号内

  •  0
  • user4487475  · 技术社区  · 10 年前

    我很难使用R将信息保持在双引号内。如果有人能帮助我,我真的很感激。

    例如,我有一个变量X1,第一次观察显示abcde:“ers39230”,第二次观察显示efb:“sfe304”,等等。双引号的起始位置不同。我想创建一个新的变量X2(或替换当前变量X1),它只显示第一次和第二次观察的ers39230和sfe304。

    如果有人能给我任何建议,我真的很感激。非常感谢。

    1 回复  |  直到 10 年前
        1
  •  1
  •   akrun    10 年前

    也许这有帮助

    sub('.*:\"(.*)\"', '\\1', X1)
    #[1] "ers39230" "sfe304"  
    

    或使用 stringi 使用正则表达式 lookahead/lookbehind

    library(stringi)
    stri_extract(X1, regex='(?<=\").*(?=\")')
    #[1] "ers39230" "sfe304"  
    

    数据

    X1 <- c('abcde:"ers39230"' , 'efb:"sfe304"')