加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – R从字符串中提取第一个数字

发布时间:2020-12-14 06:24:08 所属栏目:百科 来源:网络整理
导读:我在变量中有一个字符串,我们称之为v1.该字符串表示图片编号,采用“Pic 27 28”的形式.我想提取第一个数字并将其存储在一个名为item的新变量中. 我尝试过的一些代码是: item - unique(na.omit(as.numeric(unlist(strsplit(unlist(v1),"[^0-9]+"))))) 这很好
我在变量中有一个字符串,我们称之为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,但没有任何工作.帮助将非常感激!

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

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读