我是新来的正则表达式,所以请您帮忙。
我有一个字符串值,例如102-105+106-10605-10605 -10610-10610+10613
。如何轻松提取三位数的所有值,五位数的所有值。另一个任务是考虑数值前的+ or -
符号。说,提取所有5位数字前带有符号-
的值。
我知道R中有一些软件包可以帮助您做到这一点。但是我不知道该怎么做。我尝试了各种代码,但不幸的是,我每次都失败了。
vect <- "102-105+106-10605-10605 -10610-10610+10613"
#Extract 3 digits
str_extract_all(vect, pattern = "[:digit:]{3}")
[[1]]
[1] "102" "105" "106" "106" "106" "106" "106" "106"
#Extract 5 digits
str_extract_all(vect, pattern = "[:digit:]{5}")
[[1]]
[1] "10605" "10605" "10610" "10610" "10613"
#Extract 5 digits with minus sign ahead of it
str_extract_all(vect, pattern = "-[:digit:]{5}")
[[1]]
[1] "-10605" "-10605" "-10610" "-10610"
希望这会有所帮助以供参考:https://stringr.tidyverse.org/articles/regular-expressions.html