在R中删除第一个空格之前的所有内容。

3

我尝试了以下使用 gsub 去除第一个空格前的所有内容,但它没有起作用。

lagl2$SUSPENSE <- gsub(pattern = "(.*)\\s",replace=" ", lagl2$SUSPENSE) 

行数据示例: 64400/GL 工人赔偿

我想要的结果是这样的: 工人赔偿

这只是一个例子,但我有很多观察和一个列,并需要删除第一个空格之前的所有内容。

我是R和编程新手,但我开始喜欢它。

3个回答

5

使用sub可以通过-删除第一个空格之前的所有内容。

sub(".*?\\s", "", "64400/GL WORKERS COMPENSATION")
#[1] "WORKERS COMPENSATION"

要应用于整个列,可以执行以下操作 -
lagl2$SUSPENSE <- sub(".*?\\s", "", lagl2$SUSPENSE)

1
你可以使用字符串的开始符号 ^ 进行断言,并匹配可选的非空白字符,然后使用 \S*\s+ 匹配一个或多个空格字符来删除。
sub("^\\S*\\s+", "", "64400/GL WORKERS COMPENSATION")

输出

[1] "WORKERS COMPENSATION"

0

你可以使用环视匹配第一个空格之前的所有内容。

/^[^\s]+(?=\s)\s+/gm

演示


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接