gpt4 book ai didi

r - 提取字符串中最后出现的数字

转载 作者:行者123 更新时间:2023-12-05 08:29:24 25 4
gpt4 key购买 nike

有没有办法从最后出现的字符串中提取数字

asd <- c("asdf sfsfsd54 sdfsdfsdf sdfsdfsf654")
asd1 <- c("asdf sfsfsd54 sdfsdfsdf sdfsdfsf65421")

预期输出

new_asd 
654

new_asd1
65421

最佳答案

此代码始终提取字符串中最后的数字条目:

(stringr::str_extract(asd, stringr::regex("(\\d+)(?!.*\\d)")))
"654"
(stringr::str_extract(asd1, stringr::regex("(\\d+)(?!.*\\d)")))
"65421"

如果您只想在字符串的最后一个字符是数字时获取数字,那么您可以实现一个简单的 ifelse 条件来专门检查它,例如:

x<- c("asdf sfsfsd54 sdfsdfsdf sdfsdfsf654f")
ifelse(!is.na(as.numeric(substr(x, nchar(x), nchar(x)))),
(stringr::str_extract(x, stringr::regex("(\\d+)(?!.*\\d)"))),
NA)
NA #returns NA because last entry of string is not numeric ("f")

关于r - 提取字符串中最后出现的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70665269/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com