R实现将匹配字符行的最后一个字符替换为指定字符
1、在a.txt中每行匹配的最后一个e替换为xxx(每行都有e的情况)
dat <- read.table("a.txt", header = F) dat index <- data.frame() ## 创建数据框,储存匹配结果 for (i in 1:nrow(dat)) { count = 0 for (j in 1:ncol(dat)) { if (dat[i,j] == "e") { count = j ## 利用for双循环遍历,将每行最后匹配e的所有返回给count } } index <- rbind(index ,count) ## 储存count } index index <- cbind(rows = 1:nrow(index), index) ## 增加行号 for (i in 1:nrow(index)) { dat[index[i,1],index[i,2]] = "xxx" ## 利用匹配结果进行替换 } dat
2、不是每行都有e的情况
dat <- read.table("a.txt", header = F) dat index <- data.frame() for (i in 1:nrow(dat)) { count = 0 for (j in 1:ncol(dat)) { if (dat[i,j] == "e") { count = j } } index <- rbind(index ,count) } index index <- cbind(rows = 1:nrow(index), index) index <- index[index[,2] != 0,] ## 删除没有匹配e的行 for (i in 1:nrow(index)) { dat[index[i,1],index[i,2]] = "xxx" } dat
分类:
R语言
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2020-12-15 linux系统中部署Samba服务(实现linux系统之间文件共享)
2020-12-15 python中字符串的合并(f字符串,在变量中使用字符串)
2020-12-15 python中删除字符串开头和结尾的空白
2020-12-15 python中字符串大小写转换
2020-12-15 linux系统中安装TFTP服务(简单文件传输协议)