【问题标题】:Extract all digits values after first underscore提取第一个下划线后的所有数字值
【发布时间】:2022-06-15 20:49:22
【问题描述】:

我想提取第一个下划线(_)之后的数字,但我不知道为什么只选择了1个数字。

我的样本数据是:

myvec<-c("increa_0_1-1","increa_9_25-112","increa_25-50-76" )
as.numeric(gsub("(.*_){1}(\\d)_.+", "\\2", myvec))
[1]  0  9 NA
Warning message:
NAs introduced by coercion 

我想要:

[1]  0  9 25

请问有什么帮助吗?

【问题讨论】:

  • as.numeric(gsub("[^_]*_(\\d+).*", "\\1", myvec)) 怎么样。如果您使用(\\d),则只会捕获一个数字。如果你想要一个或多个使用(\\d+)
  • 耶是这个!!谢谢@MrFlick

标签: r regex string


【解决方案1】:
myvec<-c("increa_0_1-1","increa_9_25-112","increa_25-50-76" )
as.numeric(gsub("[^_]*_(\\d+).*", "\\1", myvec))
[1]  0  9 25

【讨论】:

    猜你喜欢
    • 2014-03-23
    • 2012-01-29
    • 2022-01-06
    • 1970-01-01
    • 2021-08-31
    • 1970-01-01
    • 1970-01-01
    • 2018-03-17
    • 2017-08-08
    相关资源
    最近更新 更多