删除特定字符串和之后的任何内容

标签 r stringr strsplit

我想删除 'sat' 和之后的任何内容,但不是 'saturday'。虽然这看起来很简单,但我一直无法找到关于此的主题。

例子:

text <- c("good morning amer sat","this morning saturday")

期望的结果:

"good morning amer","this morning saturday"

我所做的一切都会删除星期六。

最佳答案

我们可以使用单词边界 (\\b)

sub("\\s*\\bsat\\b", "", text)

-输出

[1] "good morning amer"     "this morning saturday"

或者用 stringr

library(stringr)
str_remove(text, "\\s*\\bsat\\b")
[1] "good morning amer"     "this morning saturday"

关于删除特定字符串和之后的任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72747104/

相关文章:

r - 拆分不同的长度值并绑定(bind)到列

r - 当一个变量实际上是两列时 expand.grid

r - 从 R 中的数据框中拆分逗号分隔模式

r - 根据模式过滤R中的文件名

R查找数据框中某些列与另一列匹配的行

r - 为什么我无法调用在我的终端中明显有效的 R 系统函数?

R 中的 read.csv() "no lines available in input"错误

regex - 提取 | 之间的最后一个单词|

r - 为什么 string::str_split 在 dplyr::mutate 时不更新数据帧

r - 如何在Rmarkdown中 "box"输出 "summary()"