str_extract 在 R 中从字符串中提取数字

str_extract in R to extract number from a string

我有一个 table 如下,我想提取下划线后面的数字

 description      desired_output
 desc_lvl1_id_1   1
 desc_lvl1_id_2   2

我想出的解决方案分为两部分,首先获取下划线和我想要的数字,然后取出下划线 gsub("_", "", str_extract(描述,“_[0-9]”)。我希望这可以一步完成

我们可以使用正向回顾 ((?<=_)) 并将 _ 后面的数字匹配为 str_extract 中的 pattern

library(stringr)
df1$desired_output <- as.numeric(str_extract(df1$description, '(?<=_)\d+'))