python re 替换_python字符串替换之re.sub()
re.sub(pattern, repl, string, count=0, flags=0)
pattern可以是一个字符串也可以是一个正则,用于匹配要替换的字符,如果不写,字符串不做修改。\1 代表第一个分组
repl是将会被替换的值,repl可以是字符串也可以是一个方法。如果是一个字符串,反斜杠会被处理为逃逸字符,如\n会被替换为换行,等等。repl如果是一个function,每一个被匹配到的字段串执行替换函数。
\g<1> 代表前面pattern里面第一个分组,可以简写为\1,\g<0>代表前面pattern匹配到的所有字符串。
count是pattern被替换的最大次数,默认是0会替换所有。有时候可能只想替换一部分,可以用到count
实例1:
a = re.sub(r'hello', 'i love the', 'hello world')
print(a)
'i love the world' #hello world里面的hello被 i love the替换
实例2:
>>> a = re.sub(r'(\d+)', 'hello', 'my numer is 400 and door num is 200')
>>> a
'my numer is hello and door num is hello' #数字400 和 200 被hello替换
实例3:
a = re.sub(r'hello (\w+), nihao \1', r'emma','hello sherry, nihao sherry')
>>> a
'emma' #\1代表第一个分组的值即sherry,因为有两个sherry,所以用\1可以指代第二个,这样整个字符串被emma替换
示例4:
>>> a = re.sub('(\d{4})-(\d{2})-(\d{2})', r'\2-\3-\1', '2018-06-07')
>>> a
'06-07-2018'
>>> a = re.sub('(\d{4})-(\d{2})-(\d{2})', r'\g<2>-\g<3>-\g<1>', '2018-06-07')
>>> a
'06-07-2018' #\2 和 \g<2> 指代的的都是前面的第二个分组
示例5:
import re
def replace_num(str):
numDict = {'0':'〇','1':'一','2':'二','3':'三','4':'四','5':'五','6':'六','7':'七','8':'八','9':'九'}
print(str.group())
return numDict[str.group()]
my_str = '2018年6月7号'
a = re.sub(r'(\d)', replace_num, my_str)
print(a) #每次匹配一个数字,执行函数,获取替换后的值
re.subn(pattern, repl, string, count=0, flags=0)
和sub()函数一样,只是返回的是一个tuple,替换后的字符串和替换的个数
python re 替换_python字符串替换之re.sub()相关推荐
- python 字符串替换_python字符串替换的2种方法
一.python字符串替换可以用两种方法实现: 1.用字符串本身的方法 2.用正则来替换字符串 下面用个例子来实验: a = 'hello word' 我把a字符串里的word替换为python 1. ...
- python字符串变量替换_python字符串替换第一个字符串的方法
Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾. # 例1:字符串截取 str = '1234567 ...
- python 字符串替换_python字符串替换第一个字符串的方法
Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾. # 例1:字符串截取 str = '1234567 ...
- Python正则表达式如何进行字符串替换实例
Python正则表达式如何进行字符串替换实例 Python正则表达式在使用中会经常应用到字符串替换的代码.有很多人都不知道如何解决这个问题,下面的代码就告诉你其实这个问题无比的简单,希望你有所收获. ...
- python模板代码替换_Python - 安全替换字符串模板(safe_substitute) 详细解释
安全替换字符串模板(safe_substitute) 详细解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/27057339 字 ...
- Python正则表达式如何进行字符串替换
先来段网上的知识:http://developer.51cto.com/art/201003/188824.htm Python正则表达式在使用中会经常应用到字符串替换的代码.有很多人都不知道如何解决 ...
- python输出举例_python字符串格式化输出及相关操作代码举例
字符串的格式化 Python 支持格式化字符串的输出 .尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中.在 Python 中,字符串格式化使 ...
- python设置字符_python字符串操作
# FirstPython.py """ 标准字符串函数 """ """ 字符串索引 "" ...
- python isalnum函数_Python 字符串 (isdigit, isalnum,isnumeric)转
Python isdigit() 方法检测字符串是否只由数字组成. 语法 isdigit()方法语法: str.isdigit() 参数 无. 返回值 如果字符串只包含数字则返回 True 否则返回 ...
- python字符串之查找与替换_Python字符串操作(查找,替换,分割和连接)方法及其使用...
str 提供了如下常用的执行查找.替换等操作的方法: startswith():判断字符串是否以指定子串开头. endswith():判断字符串是否以指定子串结尾. find():查找指定子串在字符串 ...
最新文章
- 服不服?40行Python代码,实现卷积特征可视化
- 001-Spring Cloud Edgware.SR3 升级最新 Finchley.SR1,spring boot 1.5.9.RELEASE 升级2.0.4.RELEASE注意问题点...
- 皮一皮:这样的消息我也想收...
- centos下phpmyadmin的安装配置
- 蓝牙a2dp硬件卸载是什么意思_索尼这项音频黑科技 让蓝牙音质从此不输有线
- 启动rocketmq_RocketMQ 部署启动指南-Docker 版
- 一道十分有趣的概率题!3局2胜和5局3胜哪个胜算更大?你怎么思考
- java的比较运算符是_Java 基础(比较运算符,逻辑运算符,三元运算符)
- linux所有文件打包压缩,Linux基础教程:对文件打包压缩
- html上传文件与后台处理,HTML加一般处理程序实现文件上传
- 【Redis】redis基本数据结构之ZSet
- java vc_vc++与 java有什么不同
- 分享一个Winform里面的HTML编辑控件Zeta HTML Edit Control,汉化附源码
- excel 平滑滚动_我的Excel书——Excel职场应用实战精粹
- 913微型计算机原理,微机原理与接口技术(铁道大学)第9章定时器计数器.ppt
- zend studio php调试,Zend Studio中如何配置和使用xdebug断点调试工具?
- USB Still Image Capture设备类
- wxpython使用简介_wxPython AUI介绍
- Win32:三菱FX3U/FX5U读写软元件方法和注意事项
- 自动表单生成工具说明(后端、桌面、web、移动端)