python 替换指定目录下,所有文本字符串

Posted 田云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 替换指定目录下,所有文本字符串相关的知识,希望对你有一定的参考价值。

网页保存后,会把js文件起名为.下载,html里面的引用也会有,很不美观,解决方案:用python替换字符串

import os
import re

"""将当前目录下所有文档进行替换操作"""


def change_str(path):
    str_pattern = r"\.下载"
    str_new = r""
    path_list = os.listdir(path)
    for file in path_list:
        abs_path = os.path.join(path, file)
        if os.path.isfile(abs_path):
            if re.search('(\.html)|(\.txt)',file):
                print(abs_path)
                with open(abs_path, 'r', encoding="utf-8") as f:
                    str_all = f.read()
                with open(abs_path, 'w', encoding="utf-8") as f:
                    f.write(re.sub(str_pattern, str_new, str_all))
                # 修改文件名
            if ".下载" in abs_path:
                    new_name = re.sub("\.下载", '', abs_path)
                    os.rename(abs_path, new_name)
        else:
            change_str(abs_path)


change_str(os.path.abspath('.'))

以上是关于python 替换指定目录下,所有文本字符串的主要内容,如果未能解决你的问题,请参考以下文章

perl 遍历指定目录下的所有文件,替换指定文本内容,返回受影响的文件路径

python读取指定目录中所有文本文件的第一行,并以此为该文本文件名重命名

vi文本模式下批量修改指定字符串

sh bash快捷方式,用于在指定目录下的所有文件中查找和替换字符串

java 替换文本中的所有指定的字符串,比如#*替换为sq, #**替换为we, 我使用了replaceAll进行的替换

python replace替换多个字符