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

Notepad++:如何使用正则表达式替换中间字符

批量替换文件内容的实用方案

这事儿好办!针对你要批量替换500个文件中di/[随机字符串]/img为di/dw/img的需求,我给你两种可靠的解决方案,覆盖不同操作系统和使用习惯:

方法一:用命令行工具sed(适合Linux/macOS或Windows下的Git Bash/WSL)

sed是Unix-like系统自带的文本处理工具,批量替换效率极高。不同系统的命令略有差异,具体如下:

命令示例

# macOS系统(注意-i后面的空字符串'')
sed -i '' 's/di\/[^\/]\+\/img/di\/dw\/img/g' *.txt

# Linux系统
sed -i 's/di\/[^\/]\+\/img/di\/dw\/img/g' *.txt
  • *.txt:表示处理当前目录下所有后缀为.txt的文件,你可以改成*处理所有文件,或者指定其他扩展名(比如*.md)
  • s/old/new/g:全局替换模式,old是匹配的正则表达式,new是替换后的内容
  • di\/[^\/]\+\/img:正则会精准匹配di/开头、/img结尾,中间是任意非斜杠字符的字符串,完美适配你描述的di/V7CZ/img这类格式

进阶:递归处理子目录

如果需要处理嵌套子目录里的文件,可以结合find命令:

# macOS
find . -name "*.txt" -exec sed -i '' 's/di\/[^\/]\+\/img/di\/dw\/img/g' {} \;

# Linux
find . -name "*.txt" -exec sed -i 's/di\/[^\/]\+\/img/di\/dw\/img/g' {} \;

方法二:用Python脚本(跨平台,适合所有操作系统)

如果你不熟悉命令行,或者需要更灵活的处理逻辑(比如过滤特定文件、记录处理日志),Python脚本是更友好的选择:

完整脚本

import os
import re

# 配置参数,根据你的需求修改
TARGET_DIR = "."  # 要处理的目录,"."表示当前目录
FILE_EXTENSIONS = [".txt"]  # 只处理这些扩展名的文件,留空则处理所有文件

def replace_in_file(file_path):
    """替换单个文件中的目标内容"""
    try:
        with open(file_path, 'r', encoding='utf-8') as f:
            content = f.read()
        
        # 正则替换所有匹配的路径
        updated_content = re.sub(r'di/[^/]+/img', 'di/dw/img', content)
        
        with open(file_path, 'w', encoding='utf-8') as f:
            f.write(updated_content)
        
        print(f"✅ 成功处理: {file_path}")
    except Exception as e:
        print(f"❌ 处理失败 {file_path}: {str(e)}")

def main():
    """遍历目录并处理所有符合条件的文件"""
    for root, _, files in os.walk(TARGET_DIR):
        for file in files:
            # 过滤文件扩展名(不需要过滤的话,注释掉下面的if判断)
            if FILE_EXTENSIONS and not any(file.endswith(ext) for ext in FILE_EXTENSIONS):
                continue
            file_path = os.path.join(root, file)
            replace_in_file(file_path)

if __name__ == "__main__":
    main()

使用步骤

  1. 把脚本保存为replace_paths.py
  2. 根据你的需求修改TARGET_DIR和FILE_EXTENSIONS参数
  3. 在命令行中运行:python replace_paths.py
  4. 脚本会实时输出每个文件的处理状态,方便你跟踪进度

优势

  • 跨平台,Windows、Linux、macOS都能直接运行
  • 自带错误处理,单个文件出错不会中断整个批量任务
  • 可轻松扩展功能(比如自动备份原文件、只替换特定行数的内容)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:46:14