如何使用python对markdown文档图片地址批量处理?

作者站长头像
站长
· 阅读数 3

原来markdown笔记中的图片都存在一个文件夹,现在想把不同笔记的图片重新存放到不同的文件夹中,因为图片比较多,所以想用python去做,但是研究了半天没有什么思路

markdown图片语法是![zzz](./xx/yy.jpg),zzz内容不一定为空,且zzz、yy,均可能出现汉字

回复
1个回答
avatar
test
2024-06-25
import re

def process_markdown_content(content):
   
    img_pattern = re.compile(r'!\[([^\]]*)\]\((\./[^)]+)\)')
    
    # 对每个链接进行处理
    def replacer(match):
        description = match.group(1)
        old_path = match.group(2)
        # 改图片链接为新的文件夹
        new_path = old_path.replace('./', './new_folder/')
        return f'![{description}]({new_path})'
    
    # 替换原链接为新链接
    new_content = img_pattern.sub(replacer, content)
    return new_content

# 示例
markdown_content = '''
Here is some markdown content.
![desc1](./images/pic1.jpg)
![desc2](./path/to/pic2.png)
'''

new_content = process_markdown_content(markdown_content)
new_content
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容