【发布时间】:2019-10-23 18:43:12
【问题描述】:
Regex 和 stringr 新手在这里。我有一个数据框,其中有一列我想从中找到 10 位数字并只保留前三位。否则,我只想保留那里的任何东西。
所以为了简单起见,让我们假设它是一个像这样的简单向量:
new<-c("111", "1234567891", "12", "12345")
我想编写代码,该代码将返回一个包含以下元素的向量:111、123、12 和 12345。我还需要编写代码(我假设我会迭代地执行此操作)在其中提取前两位数字一个 5 位数的字符串,如上面的最后一个元素。
我试过了:
gsub("\\d{10}", "", new)
但我不知道我可以为替换参数添加什么来获得我正在寻找的东西。也试过了:
str_replace(new, "\\d{10}", "")
但我还是不知道要为替换参数输入什么来仅获取前 x 位。
编辑:我不同意这是一个重复的问题,因为我不仅想从字符串中提取前 X 位数字,而且还需要使用与模式匹配的特定字符串(例如,10 位数字字符串。 )
【问题讨论】: