python string模块template_Python - 定制pattern的string模板(template) 详解
定制pattern的string模板(template) 详解
本文地址: http://blog.csdn.net/caroline_wendy/article/details/28625179
string.Template的pattern是一个正则表达式, 可以通过覆盖pattern属性, 定义新的正则表达式.
如: 使用新的定界符"{{", 把{{var}}作为变量语法.
代码:
# -*- coding: utf-8 -*-
‘‘‘
Created on 2014.6.5
@author: Administrator
@edition : python 3.3.0, eclipse pydev
‘‘‘
import string
t = string.Template(‘$var‘)
print(t.pattern.pattern)
class MyTemplate(string.Template):
delimiter = ‘{{‘
pattern = r‘‘‘
\{\{(?:
(?P\{\{) | # Escape sequence of two delimiters
(?P[_a-z][_a-z0-9]*)\}\} | # delimiter and a Python identifier
{(?P[_a-z][_a-z0-9]*)}\}\} | # delimiter and a braced identifier
(?P) # Other ill-formed delimiter exprs
)
‘‘‘
t2 = MyTemplate(‘‘‘
{{{{
{{var}}
‘‘‘)
print(‘MATCHES: ‘, t2.pattern.findall(t2.template))
print(‘SUBSTITUTED: ‘, t2.safe_substitute(var=‘replacement‘))
输出:
\$(?:
(?P\$) | # Escape sequence of two delimiters
(?P[_a-z][_a-z0-9]*) | # delimiter and a Python identifier
{(?P[_a-z][_a-z0-9]*)} | # delimiter and a braced identifier
(?P) # Other ill-formed delimiter exprs
)
MATCHES: [(‘{{‘, ‘‘, ‘‘, ‘‘), (‘‘, ‘var‘, ‘‘, ‘‘)]
SUBSTITUTED:
{{
replacement
python string模块template_Python - 定制pattern的string模板(template) 详解相关推荐
- python的模块提供了许多文件处理方法_详解使用Python处理文件目录的相关方法
所有文件都包含在各个不同的目录下,不过Python也能轻松处理.os模块有许多方法能帮你创建,删除和更改目录. mkdir()方法 可以使用os模块的mkdir()方法在当前目录下创建新的目录们.你需 ...
- python pymysql模块 链接mysql 遍历查询结果的方法 详解
目录 python链接mysql的方法 遍历字段获取值 完整代码 python链接mysql的方法 import json import pymysql def connect_mysql():con ...
- Python - 定制pattern的string模板(template) 具体解释
定制pattern的string模板(template) 具体解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/28625179 ...
- python怎么安装myqr模块-python二维码操作:对QRCode和MyQR入门详解
python是所有编程语言中模块最丰富的 生活中常见的二维码功能在使用python第三方库来生成十分容易 三个大矩形是定位图案,用于标记二维码的大小.这三个定位图案有白边,通过这三个矩形就可以标识一个 ...
- python跨函数调用变量_对python中不同模块(函数、类、变量)的调用详解
首先,先介绍两种引入模块的方法. 法一:将整个文件引入 import 文件名 文件名.函数名( ) / 文件名.类名 通过这个方法可以运行另外一个文件里的函数 法二:只引入某个文件中一个类/函数/变量 ...
- pythonprint字节按照16进制输出_对python以16进制打印字节数组的方法详解
对python以16进制打印字节数组的方法详解 一.问题描述 如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼. 二.运行效果 上面一行是直接用print打印 ...
- python实现单例模式的几种方式_基于Python中单例模式的几种实现方式及优化详解...
单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. ...
- python如何制作脚本_用python给自己做一款小说阅读器过程详解
前言 前一段时间书荒的时候,在喜马拉雅APP发现一个主播播讲的小说-大王饶命.听起来感觉很好笑,挺有意思的,但是只有前200张是免费的,后面就要收费.一章两毛钱,本来是想要买一下,发现说的进度比较慢而 ...
- python2.7除法_对python中的float除法和整除法的实例详解
从python2.2开始,便有两种除法运算符:"/"."//".两者最大区别在: python2.2前的版本和python2.2以后3.0以前的版本的默认情况下 ...
最新文章
- Swin-Transformer又又又下一城 | 看SwinTrack目标跟踪领域独领风骚
- php 使用压缩css文件,PHP-使用GZIP压缩静态CSS文件
- .NET Core开发日志——Runtime IDentifier
- JMeter部分功能详解
- 【原】webpack--loaders,主要解释为什么需要loaders和注意事项
- 如何获取 WebAssembly 代码
- 【难点+重点BFS】LeetCode 126. Word Ladder II
- 计算机office高级应用都考啥,office高级应用考什么 评分标准是什么
- Paper | Multitask learning
- php服务器搬迁失败原因
- MYSQL时间函数之NOW()
- 进阶篇:2.1)DFMA实施障碍和关键
- 基于matlab山脊线,教你如何利用水文,分析提取山脊线山谷线
- 设置WebView字体颜色,背景颜色
- android高德地图多个mark点击,Android ---------高德卫星地图绘制多个点和点的点击事件自定义弹窗...
- VMware Fusion安装CentOS 7教程
- MySQL数据库创建用户及授权
- 技术支持工程师面试试题
- win2003服务器端口修改,Windows 2003修改3389端口的方法
- MMR(最大边界相关算法)
热门文章
- 时隔多日,旧域名重用,niceyoo博客上线
- Axure 共享强制签出签入
- java 组合对象_Java 中组合模型之对象结构模式的详解
- leetcode 73 矩阵置零 C++ 两种解法
- 特别慢_这款“爱豆”很特别,它带你重温旧时光,体验慢生活的时代
- 【常见笔试面试算法题12续集一】动态规划算法案例1台阶问题练习题
- selenium+python自动化80-文件下载(不弹询问框)
- 【大数据】获取一篇新闻的全部信息
- [译]Javascript中的闭包(closures)
- 粉红小猪中有一个叫“快乐小鸡”的游戏