删除txt等文本文档中指定行方法

导读:本篇文章讲解 删除txt等文本文档中指定行方法,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

问题背景

有txt文件0000.txt,内容如下:

0 -1 DontCare -1 -1 -10.000000 219.310000 188.490000 245.500000 218.560000 -1000.000000 -1000.000000 -1000.000000 -10.000000 -1.000000 -1.000000 -1.000000
0 -1 DontCare -1 -1 -10.000000 47.560000 195.280000 115.480000 221.480000 -1000.000000 -1000.000000 -1000.000000 -10.000000 -1.000000 -1.000000 -1.000000
0 0 Van 0 0 -1.793451 296.744956 161.752147 455.226042 292.372804 2.000000 1.823255 4.433886 -4.552284 1.858523 13.410495 -2.115488
0 1 Cyclist 0 0 -1.936993 737.619499 161.531951 931.112229 374.000000 1.739063 0.824591 1.785241 1.640400 1.675660 5.776261 -1.675458
0 2 Pedestrian 0 0 -2.523309 1106.137292 166.576807 1204.470628 323.876144 1.714062 0.767881 0.972283 6.301919 1.652419 8.455685 -1.900245
1 -1 DontCare -1 -1 -10.000000 228.120000 183.030000 258.830000 217.340000 -1000.000000 -1000.000000 -1000.000000 -10.000000 -1.000000 -1.000000 -1.000000
1 -1 DontCare -1 -1 -10.000000 59.210000 191.300000 137.370000 227.430000 -1000.000000 -1000.000000 -1000.000000 -10.000000 -1.000000 -1.000000 -1.000000
1 0 Van 0 0 -1.796862 294.898777 156.024256 452.199718 284.621269 2.000000 1.823255 4.433886 -4.650955 1.766774 13.581085 -2.121565
1 1 Cyclist 0 0 -1.935205 745.017137 156.393157 938.839722 374.000000 1.739063 0.824591 1.785241 1.700640 1.640419 5.778596 -1.664456
1 2 Pedestrian 0 0 -2.530402 1138.342096 160.872449 1223.338201 324.146788 1.714062 0.767881 0.972283 6.352093 1.593046 8.156156 -1.886840

一共有是10行,其中有四行包含了DontCare

我现在想要把其中包含DontCare所在行删除,注意这不是简单的查找DontCare之后进行简单的替换,实现的效果应该是:

0 0 Van 0 0 -1.793451 296.744956 161.752147 455.226042 292.372804 2.000000 1.823255 4.433886 -4.552284 1.858523 13.410495 -2.115488
0 1 Cyclist 0 0 -1.936993 737.619499 161.531951 931.112229 374.000000 1.739063 0.824591 1.785241 1.640400 1.675660 5.776261 -1.675458
0 2 Pedestrian 0 0 -2.523309 1106.137292 166.576807 1204.470628 323.876144 1.714062 0.767881 0.972283 6.301919 1.652419 8.455685 -1.900245
2 0 Van 0 0 -1.796862 294.898777 156.024256 452.199718 284.621269 2.000000 1.823255 4.433886 -4.650955 1.766774 13.581085 -2.121565
1 1 Cyclist 0 0 -1.935205 745.017137 156.393157 938.839722 374.000000 1.739063 0.824591 1.785241 1.700640 1.640419 5.778596 -1.664456
1 2 Pedestrian 0 0 -2.530402 1138.342096 160.872449 1223.338201 324.146788 1.714062 0.767881 0.972283 6.352093 1.593046 8.156156 -1.886840

方法

方法1:使用Vim(推荐)

如果你是在Linux系统下,那么你就可以使用vivim作为编辑器,很简单的就能实现这个功能:
步骤1:
使用vim打开文件:

vim 0000.txt

步骤2:
进行vim命令行模式:英文输入法状态下输入:,然后输入

g/DontCare/d

在这里插入图片描述
然后按下回车键就实现这个功能了:
在这里插入图片描述
是不是很简单~

命令解释:
g/DontCare/dg表示global,意思是要进行全局查找,查找的内容是DontCared表示删除行。

方法2:使用Notepad++或Notepadqq

Notepad++是Windows下一个非常好用的编辑器,其Linux版本叫Notepadqq,使用该编辑器也可以非常方便的完成我们的目的。

步骤1:
使用Notepad++或Notepadqq打开文件;
步骤2:
按下Ctrl+F进入查找模式,点击替换,然后设置为如下选项,注意我箭头指的几个地方的内容,查找内容需要注意你是在Windows下还是在Linux下,Windows下填.*DontCare.*\r\n,Linux下填.*DontCare.*\n,下图展示的是Linux下Notepadqq的内容;

替换为保持为空白就行。
在这里插入图片描述
步骤3:
点击全部替换即可:
在这里插入图片描述
【参考】
1、vim删除包含特定字符串的行
2、Notepad++一次删除带指定关键字的行

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/121203.html

(0)
seven_的头像seven_bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!