gpt4 book ai didi

regex - R从字符串中提取第一个数字

转载 作者:行者123 更新时间:2023-12-04 00:41:54 25 4
gpt4 key购买 nike

我在一个变量中有一个字符串,我们称之为 v1。该字符串表示图片编号并采用“Pic 27 + 28”的形式。我想提取第一个数字并将其存储在一个名为 item 的新变量中。

我试过的一些代码是:

item <- unique(na.omit(as.numeric(unlist(strsplit(unlist(v1),"[^0-9]+")))))

这工作得很好,直到我找到了一个列表:
[1,] "Pic 26 + 25"
[2,] "Pic 27 + 28"
[3,] "Pic 28 + 27"
[4,] "Pic 29 + 30"
[5,] "Pic 30 + 29"
[6,] "Pic 31 + 32"

在这一点上,我得到的数字比我想要的要多,因为它还在抓取其他唯一数字(25)。

我实际上尝试过用 gsub 来做,但没有任何效果。帮助将不胜感激!

最佳答案

我假设您想提取每个字符串中两个数字中的第一个。

您可以使用 stri_extract_first_regex来自 stringi 的函数包:

library(stringi)
stri_extract_first_regex(c("Pic 26+25", "Pic 1,2,3", "no pics"), "[0-9]+")
## [1] "26" "1" NA

关于regex - R从字符串中提取第一个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23323321/

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