正则表达式用于匹配数据框中的数字和小数

时间:2019-05-03 18:55:52

标签: r regex tidyr data-manipulation

我在数据框中有一列,其数字后跟小数,我想删除小数以使其更整洁和可排序。我将如何删除这些数字小数?

a<-c("12. one", "1. blah", "189. hi")
b<-c(a,b,c)

df<-data.frame(a,b)

我要删除此数据帧a列中每个变量开头的数字和小数

1 个答案:

答案 0 :(得分:2)

我们可以使用sub来匹配一个或多个数字,然后匹配一个数字以及字符串开头(^)开头的任何空格,并用空格("")代替

sub("^\\d+\\.\\s*", "", a)
#[1] "one"  "blah" "hi"  

或者如果点,数字的顺序不同,则使用该模式来匹配0个或多个数字,点后跟任意空格,并用空格(""替换)

sub("^[0-9.]*\\s?", "", a)