从字符串中提取最后大写

时间:2018-11-13 13:26:41

标签: r regex stringr

我正在R中使用正则表达式进行练习。 我想提取两个大写字母的最后一次出现。 我尝试过

>str_extract("kjhdjkaYY,","[:upper:][:upper:]")
[1] "YY"

它工作得很好。如果我想提取这种模式的最后一次出现怎么办。示例:

function("kKKjhdjkaYY,")
[1] "YY"

谢谢您的帮助

1 个答案:

答案 0 :(得分:1)

我们可以使用stri_extract_last_regex包中的stringi

library(stringi)
stri_extract_last_regex("AAkjhdjkaYY,","[:upper:][:upper:]")
#[1] "YY"

或者,如果您想坚持使用stringr,我们可以提取所有与模式匹配的组,然后使用tail

获取最后一个
library(stringr)
tail(str_extract_all("AAkjhdjkaYY,","[:upper:][:upper:]")[[1]], 1)
#[1] "YY"