正则表达式_python中re模块

1. 什么是正则表达式
  • 正则表达式是对字符串操作的一种逻辑公式
  • 实现定义好的一些特定的字符,及这些特定的字符的组合
  • 组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑
2. 常见匹配模式
2.1 特殊代码
代码说明
.匹配除换行符以外的任意字符
\w匹配字母或数字
\s匹配任意的空白符
\d匹配任意数字
\b匹配单词的开始或结束
^匹配字符串的开始
$匹配字符串的结束
2.2 重复
代码说明
*重复零次或更多次
+重复一次或更多次
?重复零次或一次
{n}重复n次
{n,}重复n次或更多次
{n, m}重复n到m次
2.3 反义
代码说明
\W匹配任意不是字母和数字的字符
\S匹配任意不是空白符的字符
\D匹配任意非数字的字符
\B匹配不是单词开头或结束的位置
^X匹配除x以外的任意字符
^aeiou匹配除aeiou外的任意字符
3. re.match()
  • 尝试从从字符串起始位置匹配一个模式,如果不是起始位置匹配,返回None
  • 语法:re.match(正则表达式,要匹配的字符串,匹配方式)
    常用匹配方式:
  1. re.l:使匹配对大小写不敏感
  2. re.S:使匹配包括换行在内的所有字符
4. re.search()
  • re.search()扫描整个字符串返回第一个成功匹配的结果
5. re.findall()

搜索字符串,以列表的形式返回全部能匹配的字符串

6. re.compile()
  • 将正则字符串编译成正则表达式对象,以便于复用该匹配模式
7. re.sub()
  • 替换字符串中每一个匹配的字符串后返回替换后的字符串
  • 将匹配到的内容进行替换
  • 语法:re.sub(正则表达式,替换成的字符串,原字符串)
IN:
content = 'hello 123456 world'
content = re.sub('\d+','',content)
content

OUT:
'hello  world'
  • 需要注意的是\1是第一个匹配的结果,为了防止转义字符的问题,一般在前面加上r
content = re.sub('\d+',r'1 7890',content)
content
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值