我在数据集中有一个注释字段,我需要从中提取一些数字。字符串看起来像这样。我想要的数据将提取 series120_count =1 和穿越成功 =2
x <- "series120_count[1]; crossing_success[2]; tag_comments[small]"
我尝试了一些方法,但不太明白。例如,我尝试隔离series120_count如下,但还没有完全实现。
str_extract(x, "(?<=series120_count)(.+)(?=\\; )")
理想情况下,我想要一些在开头匹配“series120_count[”,并在括号关闭“]”时结束的内容。我也希望能够改变这一点,只需用“crossing_success [”替换第一场比赛即可获得穿越成功
如果您想对两个字符串使用lookbehind断言并提取数字,您可以使用:
\b(?<=crossing_success\[|series120_count\[)\d+(?=])
library(stringr)
x <- "series120_count[1]; crossing_success[2]; tag_comments[small]"
pattern <- "\\b(?<=crossing_success\\[|series120_count\\[)\\d+(?=])"
matches <- str_extract_all(x, pattern)
print(matches)
输出
[[1]]
[1] "1" "2"