说我有绳子-

some_string <- "this is a string with some numbers 9639998 21057535 1000 2021 2022"

我想删除7个字符长、8个字符长和4个字符长的数字模式,除非是1000.所以基本上我想要以下结果-

"this is a string with some numbers 1000"

推荐答案

这里使用gsub和正则表达式模式\b(?:\d{7,8}|(?!1000\b)\d{4})\b:

some_string <- "this is a string with some numbers 9639998 21057535 1000 2021 2022"
output <- gsub("\\b(?:\\d{7,8}|(?!1000\\b)\\d{4})\\b", "", some_string, perl=TRUE)
output

[1] "this is a string with some numbers   1000  "

实际上,更好的版本是这样的,它可以清理松散的空白:

some_string <- "this is a string with some numbers 9639998 21057535 1000 2021 2022"
output <- gsub("\\s*(?:\\d{7,8}|(?!1000\\b)\\d{4})\\s*", " ", some_string, perl=TRUE)
output <- gsub("^\\s+|\\s+$", "", gsub("\\s{2,}", " ", output))
output

[1] "this is a string with some numbers 1000"

R相关问答推荐

抖动点与嵌套类别变量箱形图的位置不对齐

用derrr在R中查找组间的重复项

根据多个条件增加y轴高度以适应geom_text标签

使用geom_segment()对y轴排序

如何在ggplot中标记qqplot上的点?

R spatstat Minkowski Sum()返回多个边界

计算两列中满足特定条件连续行之间的平均值

具有重复元素的维恩图

为左表中的所有行使用值Fill滚动左连接

QY数据的处理:如何定义QY因素的水平

R如何将列名转换为更好的年和月格式

如何在R中改变fviz_pca_biplot中圆的边界线的 colored颜色 ?

将统计检验添加到GGPUBR中的盒图,在R

R预测包如何处理ARIMA(Auto.arima函数)中的缺失值

禁用时,SelecizeInput将变得不透明

R没有按顺序显示我的有序系数?

如何在一个GGPLATE中绘制多个灰度平滑?

基于已有ID列创建唯一ID

迭代通过数据帧创建直方图

在shiny 的Quarto文档中找不到函数renderEcharts4r