python字符串替换re.sub()实例解析


Posted in Python onFebruary 09, 2020

这篇文章主要介绍了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)<br data-filtered="filtered">'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 相关文章推荐
python使用nntp读取新闻组内容的方法
May 08 Python
Python中encode()方法的使用简介
May 18 Python
Python fileinput模块使用实例
May 28 Python
python opencv实现任意角度的透视变换实例代码
Jan 12 Python
python字符串的方法与操作大全
Jan 30 Python
Python selenium实现微博自动登录的示例代码
May 16 Python
使用python Fabric动态修改远程机器hosts的方法
Oct 26 Python
pandas 快速处理 date_time 日期格式方法
Nov 12 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
Feb 22 Python
Python实现的栈、队列、文件目录遍历操作示例
May 06 Python
Python imread、newaxis用法详解
Nov 04 Python
pytorch masked_fill报错的解决
Feb 18 Python
Python随机数函数代码实例解析
Feb 09 #Python
Python如何访问字符串中的值
Feb 09 #Python
python3 字符串知识点学习笔记
Feb 08 #Python
python入门之基础语法学习笔记
Feb 08 #Python
python实现飞机大战游戏(pygame版)
Oct 26 #Python
Python调用Windows命令打印文件
Feb 07 #Python
python连接打印机实现打印文档、图片、pdf文件等功能
Feb 07 #Python
You might like
?生?D片??C字串
2006/12/06 PHP
php版小黄鸡simsimi聊天机器人接口分享
2014/01/26 PHP
php 解析xml 的四种方法详细介绍
2016/10/26 PHP
PHP反射原理与用法深入分析
2019/09/28 PHP
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
2013/03/11 Javascript
浅谈javascript中的instanceof和typeof
2015/02/27 Javascript
jquery实现textarea 高度自适应
2015/03/11 Javascript
基于jquery实现图片放大功能
2016/05/07 Javascript
jQuery中的一些常见方法小结(推荐)
2016/06/13 Javascript
JS实现iframe自适应高度的方法(兼容IE与FireFox)
2016/06/24 Javascript
js获取元素下的第一级子元素的方法(推荐)
2017/03/05 Javascript
Javascript实现跨域后台设置拦截的方法详解
2017/08/04 Javascript
JS代码实现电脑配置检测功能
2018/03/21 Javascript
通过webpack引入第三方库的方法
2018/07/20 Javascript
vue2.0的虚拟DOM渲染思路分析
2018/08/09 Javascript
JS实现的RC4加密算法示例
2018/08/16 Javascript
迅速了解一下ES10中Object.fromEntries的用法使用
2019/03/05 Javascript
jQuery实现简单三级联动效果
2020/09/05 jQuery
决策树的python实现方法
2014/11/18 Python
python 添加用户设置密码并发邮件给root用户
2016/07/25 Python
python不换行之end=与逗号的意思及用途
2017/11/21 Python
python正则表达式爬取猫眼电影top100
2018/02/24 Python
Python之Numpy的超实用基础详细教程
2019/10/23 Python
python安装dlib库报错问题及解决方法
2020/03/16 Python
解决Keras中CNN输入维度报错问题
2020/06/29 Python
python中return不返回值的问题解析
2020/07/22 Python
python实现文件+参数发送request的实例代码
2021/01/05 Python
python利用文件时间批量重命名照片和视频
2021/02/09 Python
HTML5调用手机发短信和打电话功能
2020/04/29 HTML / CSS
塑料制成的可水洗的编织平底鞋和鞋子:Rothy’s
2018/09/16 全球购物
施工安全责任书范本
2014/07/24 职场文书
2014年教师节红领巾广播稿
2014/09/10 职场文书
创业项目(超低成本创业项目)
2019/08/16 职场文书
六年级作文之预言作文
2019/10/25 职场文书
MySQL优化常用的19种有效方法(推荐!)
2022/03/17 MySQL
在MySQL中你成功的避开了所有索引
2022/04/20 MySQL