猜您喜欢:
TXT文件按条件批量删除行工具是用Python语言写的一款文本处理软件,源码开放,界面简单易用,支持批量删除行含关键字或词的行、空行以及批量字符小于多少删除行,使用的时候只需要操作几个步骤即可进行转换,非常方便,效率高,减少不必要的时间浪费,欢迎下载使用。
批量删除行含关键字或词的行(多个关键字/词中间用空格隔开)
批量删除空行
批量字符小于多少(可设定)删除行
点击打开文件批量选择TXT文件。
需要的功能前打勾,并配置。
点击【开始 】即可进行转换。
最后会生成原文件名+_new.txt的文件。
import os
import tkinter
from tkinter import ttk, filedialog, messagebox # 有Combobox、LabelFrame 组件时需要本语句
FilePaths = ()
def getTxtFiles():
global FilePaths
files = filedialog.askopenfilenames(filetypes=[('text files', '.txt')])
if files:
FilePaths = files
# print(FilePaths)
for f_name in files:
ctrl_FileListBox.insert('end', f_name)
ctrl_FileListBox.insert(tkinter.INSERT, '⁄n')
else:
messagebox.showinfo(title='提示', message='没有选择任何文件!')
def KeyWordScan(keys, s):
key_words = keys.split(" ")
t_f = False
for key_word in key_words:
if key_word in s:
t_f = True
return t_f
def ctrl_StartBtn_clicked():
has_key_words = int_CheckBox1.get()
key_words = str_KeyWord.get()
has_empty_line = int_CheckBox2.get()
has_N = int_CheckBox3.get()
n = str_KeyNum.get()
for file in FilePaths: # 循环遍历文件
s_file = open(os.path.splitext(file)[0]+"_new"+os.path.splitext(file)[1], 'w+') # 文件保存位置
f_lines = open(file, encoding='utf8').readlines() # 打开文件,读入每一行
for s in f_lines: # s: 每一行的内容
# 操作1
if has_key_words:
if KeyWordScan(key_words, s):
continue
# 操作2
if has_empty_line:
if len(s.strip()) == 0:
continue
# 操作3:
if has_N:
if len(s.strip()) < int(n):
continue
s_file.write(s)
s_file.close() # 关闭文件
root = tkinter.Tk() # 设定窗体变量
root.geometry('450x300') # 格式('宽x高+x+y')其中x、y为位置
root.title('TxT文件处理助手V0.1 By 52poje Loker')
ctrl_Frame1 = ttk.LabelFrame(root, text='选项')
ctrl_Frame1.place(x=14, y=72, width=388, height=101)
ctrl_StartBtn = tkinter.Button(root, text='确定', font=('宋体', '9'),
command=ctrl_StartBtn_clicked) # 可在括号内加上调用函数部分 ,command=ctrl_StartBtn_clicked
ctrl_StartBtn.place(x=22, y=223, width=72, height=29)
ctrl_QuitBtn = tkinter.Button(root, text='取消', font=('宋体', '9')) # 可在括号内加上调用函数部分 ,command=ctrl_QuitBtn_clicked
ctrl_QuitBtn.place(x=108, y=223, width=72, height=29)
ctrl_FileListBox = tkinter.Text(root, font=('宋体', '9'))
ctrl_FileListBox.place(x=14, y=7, width=260, height=38)
ctrl_Scrollbar1 = tkinter.Scrollbar(root, command=ctrl_FileListBox.xview, orient=tkinter.HORIZONTAL)
ctrl_Scrollbar1.place(x=14, y=46, width=261, height=16)
ctrl_Scrollbar2 = tkinter.Scrollbar(root, command=ctrl_FileListBox.yview, orient=tkinter.VERTICAL)
ctrl_Scrollbar2.place(x=275, y=7, width=16, height=39)
ctrl_FileListBox.config(xscrollcommand=ctrl_Scrollbar1.set, yscrollcommand=ctrl_Scrollbar2.set, wrap='none')
int_CheckBox1 = tkinter.IntVar() # 绑定变量
ctrl_CheckBox1 = tkinter.Checkbutton(ctrl_Frame1, text='删除行含关键字或词的行', variable=int_CheckBox1, font=('宋体', '9'))
ctrl_CheckBox1.place(x=14, y=14, height=22) # 考虑到对齐问题,不列入宽度,需要时手动加入 width=130
ctrl_CheckBox1.deselect() # 默认为未选中状态
Ctrl_Label1 = tkinter.Label(ctrl_Frame1, text="关键字:")
Ctrl_Label1.place(x=180, y=14, width=55, height=22)
str_KeyWord = tkinter.StringVar() # 绑定变量
ctrl_KeyWord = tkinter.Entry(ctrl_Frame1, textvariable=str_KeyWord, font=('宋体', '9'))
ctrl_KeyWord.place(x=230, y=14, width=150, height=22)
int_CheckBox2 = tkinter.IntVar() # 绑定变量
ctrl_CheckBox2 = tkinter.Checkbutton(ctrl_Frame1, text='删除空行', variable=int_CheckBox2, font=('宋体', '9'))
ctrl_CheckBox2.place(x=14, y=36, height=22) # 考虑到对齐问题,不列入宽度,需要时手动加入 width=130
ctrl_CheckBox2.deselect() # 默认为未选中状态
int_CheckBox3 = tkinter.IntVar() # 绑定变量
ctrl_CheckBox3 = tkinter.Checkbutton(ctrl_Frame1, text='删除字符小于N的行', variable=int_CheckBox3, font=('宋体', '9'))
ctrl_CheckBox3.place(x=14, y=58, height=22) # 考虑到对齐问题,不列入宽度,需要时手动加入 width=130
ctrl_CheckBox3.deselect() # 默认为未选中状态
Ctrl_Label = tkinter.Label(ctrl_Frame1, text="N =")
Ctrl_Label.place(x=220, y=58, width=22, height=22)
str_KeyNum = tkinter.StringVar() # 绑定变量
ctrl_KeyNum = tkinter.Entry(ctrl_Frame1, textvariable=str_KeyNum, font=('宋体', '9'))
ctrl_KeyNum.place(x=250, y=58, width=22, height=22)
ctrl_OpenFileBtn = tkinter.Button(root, text='选择文件',
font=('宋体', '9'),
command=getTxtFiles) # 可在括号内加上调用函数部分 ,command=ctrl_OpenFileBtn_clicked
ctrl_OpenFileBtn.place(x=305, y=18, width=72, height=29)
# str_OutputPath = tkinter.StringVar() # 绑定变量
# ctrl_OutputPath = tkinter.Entry(root, textvariable=str_OutputPath, font=('宋体', '9'))
# ctrl_OutputPath.place(x=14, y=187, width=209, height=22)
root.mainloop()
按照用户需求进行TXT文件处理
能实现指定行批量删除功能
提高了工作效率
以上就是非凡软件站小编今日为大家带来的TXT文件按条件批量删除行工具,更多软件下载尽在非凡软件站。
文本处理工具 文本处理工具专题集合了所有与txt文本相关系列工具,文本处理工具拥有包括阅读、翻译、转换、文字替换、分割、提取等等功能;欢迎选择下载。
TXT&DOC互转助手v2.1 TXT&DOC互转助手是一款专注于文本文件(...详情>>
文本巨匠(TextMaster)v3.8 文本巨匠可以满足用户的各种文本处理需求,包含了很多实用的功能...详情>>
超速大文本去重复工具v1.6 超速大文本去重复工具是一款专门用于处理大量TXT文本数据的软...详情>>
iphone15系列自发布以来,引发了众多用户的关注与讨论,然而,它并非毫无瑕疵。发热问题较为突出不少用户反馈,在长时间使用一些高负荷应用,如大型游戏或进行视频编辑时,iphone15系列手机会出现明显发热的情况。这不仅影响使用体验,甚至还可能导致手机性能短暂
对于很多小白来说,自己安装路由器可能会觉得是件难事,但其实只要按照步骤来,一点也不难。首先,准备好所需设备:路由器、网线、电脑。然后,确定安装位置。要找一个通风良好、信号能覆盖到常用区域的地方,比如客厅或房间角落,避免路由器周围有金属物品或遮挡物,以免影响信号
想让你的网易云音乐界面更酷炫?动态背景是个绝佳选择!下面就来详细说说怎么设置。一、准备工作确保你已更新到网易云音乐最新版本,因为部分功能可能在旧版本中没有或不完善。二、开通会员很多动态背景需要会员权益才能使用。开通会员后,你将拥有更丰富的背景资源库,享受专属的
diskgenius是一款功能强大的磁盘管理及数据恢复软件,它不仅支持基本的磁盘分区操作,如建立、删除和格式化分区,还提供了数据恢复、分区备份与还原、复制分区和硬盘、快速分区等多种高级功能。当硬盘分区中存在多余的空闲空间时,用户可以使用diskgenius来清
在使用word文档时,有时会遇到一行字中间出现很大空距的情况,这不仅影响文档的美观,还可能在排版上造成困扰。其实,这些看似无端的空距,往往是由一些隐藏的空格导致的。下面就来详细探讨一下原因及如何快速删除这些看不见的空格。一、空格产生的原因1.手动输入空格:最常
在当今数字化时代,网络已经成为人们生活中不可或缺的一部分。而一款好用的浏览器,无疑是畅游网络世界的关键工具。uc浏览器作为一款备受欢迎的浏览器,其导航入口为用户带来了诸多便利。uc浏览器导航入口界面简洁明了,打开浏览器,首先映入眼帘的就是精心设计的导航页面。在
本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任,所有资源请在下载后24小时内删除。
如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系
(版权说明注意事项)。若有关在线投稿、无法下载等问题,请与本站客服人员联系
!
用户可自行按线路选择相应的下载点,可以直接点击下载/另存为,若直接点击下载速度太慢,请尝试使用高速下载器。为确保下载的文件能正常使用,请使用WinRAR最新版本解压本站软件。
建议大家谨慎对待所下载的文件,大家在安装的时候务必留意每一步!关于360安全卫士或QQ电脑管家的有关提示,请自行注意选择操作。