我试图在ID的一个列中扩展一个ID,该ID是字符串的一部分。我想编写一个表达式,该表达式将从IAB开始并以数字结尾提取图形。我该怎么办?
示例字符串:
[31] "{\"\"element\"\":\"\"IAB1_4\"\"}"
[32] "{\"\"element\"\":\"\"IAB19_3\"\"}"
[33] "{\"\"element\"\":\"\"IAB19_16\"\"}"
[34] "{\"\"element\"\":\"\"IAB9_11\"\"}"
[35] "{\"\"element\"\":\"\"IAB19_5\"\"}"
[36] "{\"\"element\"\":\"\"IAB18_1\"\"}"
我只需要提取以IAB开头并以数字结尾的部分。我该怎么办?
答案 0 :(得分:3)
我们可以使用str_extract
来匹配字符串“ IAB”后的一个或多个数字(\\d+
),后跟一个下划线(_
)和一个或多个数字({{1 }})
\\d+
或者使用library(stringr)
str_extract(v1, 'IAB\\d+_\\d+')
#[1] "IAB1_4" "IAB19_3" "IAB19_16" "IAB9_11" "IAB19_5" "IAB18_1"
中的regexpr
base R
regmatches(v1, regexpr('IAB\\d+_\\d+', v1))
#[1] "IAB1_4" "IAB19_3" "IAB19_16" "IAB9_11" "IAB19_5" "IAB18_1"