zoukankan      html  css  js  c++  java
  • 分享一个自己写的网上模板转jinja2

    看了几天前端发现自己不是那块料,还是老老实实下个模板改下用吧
    改的时候为了偷懒写几行代码批量转换,写的时候还是遇到了点小问题,特此分享

    import os
    import re
    
    # 注意,按需要更改正则表达式里面的匹配类型
    pattern = re.compile('((href)|(src))="([^<>]*?.((js)|(css)|(jpg)|(png)))"')
    
    
    def func(match):
        s = match.groups()
        # 嵌套使用花括号的时候无论是format语句还是语法糖都会出现括号无法正常匹配的问题,如果有更优雅的方式,请给我留言
        repl = s[0] + '="{{' + " url_for('static', filename='" + s[3] + "') }}""
        return repl
    
    # 按照你的需要更改文件目录
    files = os.listdir('./')
    for file in files:
        if file.endswith('.html'):
            with open(file, 'r+') as f:
                html = f.read()
                # 重置文件指针的位置,开始写的时候没注意到这个问题,好几次才发现问题所在
                f.seek(0)
                after = re.sub(pattern, func, html)
                f.write(after)
    
    

    如果代码哪里有问题,请给我留言,非常感谢。

  • 相关阅读:
    各种小知识
    基础技能
    st表
    有理数取余
    FFT加速高精度乘法
    unique
    离散化
    线段树复杂度分析
    楼房重建
    电脑装系统常用方法
  • 原文地址:https://www.cnblogs.com/slientbrain/p/13460733.html
Copyright © 2011-2022 走看看