You need to enable JavaScript to run this app. Notepad++如何用正则匹配整行 删除Start time/End time开头的冗余行
优惠活动
大模型
产品
解决方案
定价
更多

Notepad++如何用正则匹配整行 删除Start time/End time开头的冗余行

文本行过滤的实现方案

所有方案的核心逻辑都是匹配行首文本,直接剔除所有以Start time、End time开头的行,按需清理多余空行,最终只保留Name开头的内容。

方案1:带正则能力的文本编辑器(零代码,单文件最快)

用Notepad++、VS Code这类常用编辑器就能完成操作,不需要写代码:

  1. 打开目标TXT文件,调出「查找替换」面板
  2. 勾选面板中的「正则表达式」匹配模式
  3. 查找输入框填入规则:^(Start time|End time|$).*\n?
  4. 替换输入框留空,点击「全部替换」即可
    这个规则会同时匹配时间开头的行、所有空白行,一步就能得到仅保留Name行的结果。

方案2:系统自带命令行(无需安装额外软件)

适合习惯用终端操作的用户,直接调用系统自带工具即可完成:

  • macOS / Linux 终端执行命令:
    grep -vE "^(Start time|End time|$)" 原文件.txt > 处理后文件.txt
    其中grep -v是反向筛选参数,会把所有匹配规则的行排除,结果输出到新文件,不会修改原文件内容。
  • Windows PowerShell 执行命令:
    Get-Content 原文件.txt | Where-Object {$_.Trim() -ne "" -and $_.Trim() -notmatch "^(Start time|End time)"} | Set-Content 处理后文件.txt

方案3:Python脚本(适合批量处理、可灵活扩展规则)

如果需要批量处理同格式的多个TXT文件,或者后续要新增更多过滤规则,直接运行以下简短脚本即可:

# 替换为你自己的文件路径
input_file = "待处理文件.txt"
output_file = "处理后结果.txt"

# 逐行读取文件内容
with open(input_file, "r", encoding="utf-8") as f:
    all_lines = f.readlines()

# 过滤规则:剔除空行、以及行首为Start time、End time的行
keep_content = [
    line for line in all_lines
    if line.strip() != "" and not line.strip().startswith(("Start time", "End time"))
]

# 将保留的内容写入新文件
with open(output_file, "w", encoding="utf-8") as f:
    f.writelines(keep_content)

脚本运行后生成的新文件,会和你预期的输出效果完全一致。

注意:匹配规则只识别行首文本,原文件里End time行尾附带的#"这类杂字符不会影响过滤结果,无需额外处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.31 13:06:07