Py正则表达式学习笔记:常用函数——替换方法、预编译

替换方法

re库中提供了sub()方法,用于替换文本中的匹配表达式内容。方法的返回值是替换后的文本内容字符串。

1、简单用法
re.sub(pattern,repl,courceText)

顾名思义:第一个参数是正则表达式;第二个参数是替换后的字符;第三个参数是源文本

2、指定替换次数
re.sub(pattern,repl,sourceText,count)

第四个参数指定最大替换次数。第四个参数可以不写,不写意味着默认值为0,表示全部替换

3、例子演示

将日期格式为2021-03-18转换为2021/03/18

import re

text = "2019-11-23"

## 替换所有的非数字的字符,兼容性好
regex = r'\D'

## 全部替换
targetText = re.sub(regex, '/', text)
print('日期:' + targetText)

## 仅替换一次
targetText = re.sub(regex, '/', text, 1)
print('日期:' + targetText)

预编译

re库中提供了compile方法进行预编译

re.compile(regex)

参数就是正则表达式,返回值是Pattern对象预编译的主要目的是为了在使用同一个表达式检索不同的文本,或调用不同的方法以完成不同的操作时,能够复用

例子演示
import re

text = "2019-11-23"

## 替换所有的非数字的字符,兼容性好
regex = r'\D'
## 编译一次
pattern = re.compile(regex)

matchObjs = pattern.findall(text)
print(matchObjs)

targetText = pattern.sub('/', text)
print('日期:' + targetText)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值