首页 > 解决方案 > 使用 str_extract 提取 R 中字符串中最后一次出现模式的时间

问题描述

我有以下字符串向量:

  Vector=c("541453138577876516 398 2020-05-01 2020-05-31 542502400000000099 219,075 MW 2020-01-01 Investment and production support T020002 - Wind/Offshore",
           "Ripalonga 4588 2020-04-01 2020-05-31 803255132001657053 13,8 MW 2018-07-10 Production Support T020000 - Wind")

我想用每个条目中的最后两个 18 位数字制作这个向量:

Vector1=c("542502400000000099 ","803255132001657053")

我尝试使用不同的模式来提取正确的数字,但我一直在提取第一个 18 位数字而不是最后一个:

Vector1=str_extract(Vector, "([0-9$]{18})")

Vector1=str_extract(Vector, "([0-9]{18})")

输出:

[1] "541453138577876516" "803255132001657053"

哪种正则表达式模式可以完成这项工作?我对想法持开放态度,也对 Stringr 包以外的其他解决方案持开放态度。

先感谢您!

标签: rregexstringextractstringr

解决方案


推荐阅读