我有一个如下列:
C1
we-23 pcs,qw-4 pcs
we-30 pcs
er-21 pcs,we-2 pcs
tr-23 pcs
we-0 pcs, re-2 pcs
we-0 pcs
NA
我想提取"我们"以数字格式,保留NAs且没有字符(0)。 我用过:
C2 <- as.numeric(str_extract_all(str_extract_all(C1, "we-*\\d+"), "\\d+"))
结果:
C2
23
30
2
0
0
0
NA
但是,我想让tr-23 pcs与we-0 pcs不同。所以我正在使用另一个逻辑列来查找&#34;我们&#34;在C1。 有更好的方法吗?
答案 0 :(得分:1)
您可以使用
C2 <- as.numeric(str_extract(C1, "(?<=we-)\\d+"))
请参阅regex demo。
模式详情:
(?<=we-)
- 与we-
\d+
- 1+位。