You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python或AHK批量清理TXT文件中指定内容

提取文本文件中每行“-”之前的内容

方法1:Python脚本(适合编程新手,跨平台)

这是最容易理解和修改的方案,步骤如下:

  1. 打开文本编辑器(比如Notepad、VS Code),复制以下代码,保存为clean_text.py
  2. 把你的原始txt文件重命名为input.txt,和这个py文件放在同一个文件夹里
  3. 打开命令行,进入该文件夹,运行 python clean_text.py,处理后的内容会生成在output.txt里
# 读取原始文件并写入处理后的内容
with open('input.txt', 'r', encoding='utf-8') as infile, open('output.txt', 'w', encoding='utf-8') as outfile:
    for line in infile:
        # 按第一个'-'分割,保留前半部分,去除末尾多余空格
        cleaned_content = line.split('-', 1)[0].rstrip()
        outfile.write(f"{cleaned_content}\n")

代码说明:

  • split('-', 1):只按第一个出现的-分割行内容,避免如果你要保留的信息里也有-的情况
  • rstrip():移除内容末尾的空格(原行中-前有个空格,这步可以把它去掉)
  • 如果你原始文件名不是input.txt,把代码里的input.txt改成你的实际文件名即可

方法2:命令行工具(适合Linux/macOS或Windows WSL)

如果你熟悉命令行,可以直接用sed命令一键处理:

sed 's/ - .*BR1$//' 你的原始文件名.txt > 处理后的文件名.txt

命令说明:

  • s/ - .*BR1$//:匹配每行中从-(注意前面的空格)到末尾BR1的所有内容,替换为空
  • 把你的原始文件名.txt和处理后的文件名.txt换成你实际的文件名即可

注意事项

  • 操作前一定要备份原始文件,避免误操作导致数据丢失
  • 如果文件名包含空格,记得给文件名加上引号,比如 sed 's/ - .*BR1$//' "my file.txt" > "cleaned file.txt"

内容的提问来源于stack exchange,提问作者anzusTheCoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 09:25:27