正则表达式
1. 正则表达式是什么东西?
正则表达式(Regular Expression):查询和匹配字符串的规则
2. 正则表达式怎么表示数据?
普通字符: 元数据,可以用于匹配指定的字符
r = “a”:用于在目标字符串中匹配小写字母a
元字符
r = “.”:用于匹配任意一个字符
r = “\”:转移字符~用于将一个普通的字符,转义成一个有意义的字符
r = “\d”:表示一个0~9之间的整数
r = “\D”:表示一个非数字字符
r = “\w”:表示任意一个0~9或者字母或者下划线的字符
r = “\W”:表示任意一个特殊字符
r = “\s”:表示匹配一个空白字符
r = “\S”:表示匹配一个非空白字符
r = “^”:匹配字符串的开头位置
r = “$”:匹配字符串的结束位置
r = “\d*”:表示前面匹配的字符出现了0次或者多次
r = “\d?”:表示前面匹配的字符出现了0次或者1次
r =”\d+”:表示前面匹配的字符出现了1次或者多次
范围匹配
分组匹配方式:将多个匹配字符当成一个完整的匹配公式
(abc):用于在目标字符串中查询abc同时出现的地方
选择匹配方式:将指定的多个字符,选择其中一个进行匹配
[abc]:用于在目标字符串中,查询a或者b或者c出现的地方
[0-9]:用于匹配一个0~9之间的数字->等价于\d
[a-z]:用于匹配一个a-z之间的字母
[A-Z]:用于匹配一个A-Z之间的字母
[a-zA-Z]:用于匹配一个字母【大小写均可】
[a-zA-Z0-9_]:用于匹配一个非特殊字符,等价于\w
范围匹配
\d{m, n}:匹配到的字符出现了至少m次,最多n次
\d{,20}:匹配一个数字最多出现20次
\d{8,}:匹配一个数字,最少出现8次
\d{8,16}:匹配一个数字,最少出现8次,最多出现16次
正则表达式在python中的使用
正则表达式,在python中,主要用到了一个re模块
compile():编译正则表达式
pattern = re.compile(“^\d{2,}$”)
pattern = r‘^\d{2,}$’
pattern.match(str,begin,end):从指定的字符串str第一个字符查询匹配的字符
pattern.search(str, begin, end):从指定的字符串中直接进行查询,查询到的第一个结果作为匹配结果
pattern.findall(str):从指定的字符串中,查询符合匹配规则的字符,将所有符合的字符存放在一个列表中
pattern.finditer(str):从指定的字符串中,查询符合匹配规则的字符保存在一个可以迭代的对象中
pattern.sub():替换
pattern.split():拆分
网友评论