python 正则表达式

14.8 正则表达式

正则表达式也叫做匹配表达式,它是由一串特定的字符组成的,一般用于查找(替换),匹配字符
import re
[‘A’, ‘ASCII’, ‘DEBUG’, ‘DOTALL’, ‘I’, ‘IGNORECASE’, ‘L’, ‘LOCALE’, ‘M’, ‘MULTILINE’, ‘Match’,‘Pattern’, ‘RegexFlag’, ‘S’, ‘Scanner’, ‘T’, ‘TEMPLATE’, ‘U’, ‘UNICODE’, ‘VERBOSE’, ‘X’, ‘MAXCACHE’, ‘all’,
‘builtins’, ‘cached’, ‘doc’, ‘file’, ‘loader’, ‘name’, ‘package’, ‘spec’, ‘version’, ‘cache’, ‘compile’,‘compile_repl’, ‘expand’, ‘locale’, ‘pickle’, ‘special_chars_map’, ‘_subx’, ‘compile’, ‘copyreg’, ‘enum’,
‘error’, ‘escape’, ‘findall’, ‘finditer’, ‘fullmatch’, ‘functools’, ‘match’, ‘purge’, ‘search’, ‘split’,‘sre_compile’, ‘sre_parse’, ‘sub’, ‘subn’, ‘template’]

compile findall split finditer search sub match
match() ------------ 从头开始匹配
search()------------扫描整个字符串并返回第一个成功的匹配
sub()-------------用于替换字符串中的匹配项
compile()-----------用于编译正则表达式,生成一个正则表达式( Pattern )对象,供 match() 和 search() 这两个函数使用
findall()----------------在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表.
finditer()----------------在字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回。
split()------------按照能够匹配的子串将字符串分割后返回列表

math 和 search的区别
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。
在这里插入图片描述

14.8.1 元字符

\d -------------------- 匹配数字
. --------------------- 匹配的是任意符号(除了\n)
\w ---------------- 匹配所有的有效符号(大小写字母,数字,下划线,各国语言符号)
\s ------------------- 匹配的是空白位(空格 \t(四个空格))
^ ------------------- 以xxxx开头 例如:以1开头 ^1
$ ------------------ 以xxx结尾
[] -------------------- 列举 [0123456789]等价于\d [a-z] [A-Z] [A-Za-z]
在这里插入图片描述

14.8.2 反义符

\D -------------- 不是数字
\W ------------ 特殊符号
\S --------------- 非空白位
[^] ------------------- 列举反义 注意:[^] 和 1 的区别

14.8.3 转义符

在python中字符串\ 表示的特殊含义 如果要表示一个正常\ 需要两个
在这里插入图片描述

建议大家写正则表达式的时候要加上r

14.8.4位数

.* ----------------- 表示的是匹配任意位(可以0位,可以是1位…)
±------------------表示的是至少一位(最少就要一位,可以n位)
?----------------- 0位或者是1位
{n,} ----------------- 至少n位
{n,m} ------------------ 表示n-m范围

14.8.5分组(group)

在正则表达式里面,使用()将正则包裹起来,会形成正则进行二次筛选
在这里插入图片描述
去掉html里面的标签:r"</?.+?>"


  1. ↩︎

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值